열거형 열거형 값을 한번 지정한 이후로는 .을 이용해서 열거형명을 생략해서 사용 가능하다. enum Direction { case north, south, east, west}let direction = Direction.north 구조체 클래스 vs 구조체 참조 타입 vs 값 타입클래스는 참조 타입(Reference Type)클래스의 인스턴스를 변수나 상수에 할당하거나 함수에 전달할 때, 실제로는 그 인스턴스의 참조가 전달된다.구조체는 값 타입(Value Type)구조체의 인스턴스를 변수나 상수에 할당하거나 함수에 전달할 때, 그 인스턴스의 복사본이 전달된다. 상속(Inheritance)클래스는 상속을 지원한다. 한 클래스는 다른 클래스로부터 상속받아 그 기능을 확장할 수 있다. 구조체는 ..
IOS
셀을 눌렀을 때 화면이 이동되는 것을 테스트해보기 위해 아무 내용이나 채워 넣고 화면 이동이 잘 되나 확인해 보았다.Cell을 누르고 우클릭으로 이동할 화면 쪽으로 끌어다놓으면 위와 같은 메뉴가 나타나는데 일단 show를 선택한다. 셀을 누르면 화면 전환이 잘 된다. 그런데 여기서 문제가 있다. 어떤 셀을 눌렀는지 확인을 못한다는 것이다. override func prepare(for segue: UIStoryboardSegue, sender: Any?) { let dest = segue.destination as! DetailViewController let myIndexPath = table.indexPathForSelectedRow! let row = myIndexPath.row ..
오토 레이아웃 오토 레이아웃을 적용해놨으니 아이폰이나 아이패드 기종을 변경하여도 그에 맞춰서 자동으로 요소들이 늘어난다. https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/index.html Auto Layout Guide: Understanding Auto Layout developer.apple.com 위 사이트에서는 오토 레이아웃에 대한 가이드를 제공하고 있다. 코드로 직접 오토 레이아웃을 구성할 수도 있다. 오토 레이아웃과 관련된 용어들이다. Alignment Constraint의 위 두 제약을 추가하면 정가운데에 맞춰지도록 할 수 있다. 이런식으로 글자 크기에 맞..
간단한 앱 만들기 간단한 전광판 앱을 만들기 위해 레이아웃을 배치했다. Autoshrink를 통해서 최소 글자 크기를 지정할 수 있다. 코드와 레이아웃을 연결하기 위해서 마우스 우클릭으로 끌어다 놓으면 Outlet이나 Action을 연결할 수 있다. import UIKit class ViewController: UIViewController { @IBOutlet weak var textField: UITextField! @IBOutlet weak var label: UILabel! @IBAction func displayText(_ sender: UIButton) { label.text = textField.text } override func viewDidLoad() { super.viewDidLoad..
이렇게 빨간색 x로 뜨는 오류는 코드를 수정하지 않는 이상 해결 할 수 없다. 이런식으로 동그란 빨간색이 뜨는 오류는 자동으로 고치도록 할 수 있다. 초기값이 있을 경우 변수나 상수 선언 시에 타입을 생략할 수 있다. 컴파일러가 타입을 추론하여 처리해준 것이다. 문자열 안에 변수나 상수의 값을 넣고 싶으면 \() 안에 변수나 상수를 작성하면 된다. 타입을 작성하지 않으면 오류가 발생한다. 여기에 적어주는 타입을 타입 어노테이션이라고 한다. Minimum Deployments는 실행 가능한 환경이 해당 iOS 버전보다 같거나 높아야한다고 설정할 수 있다. Portrait은 세로, Landscape는 가로로 기울였을 때이다. import UIKit class ViewController: UIViewContr..