swift & iOS/ios & xcode 12

xcode 단축키

프로젝트 실행하기: cmd + R 네비게이터(swift 파일 목록 보여주는 맨 왼쪽 패널): cmd + 0 네비게이터 내의 탭을 하나씩 이동하려면 cmd + 1, cmd + 2, cmd + 3 ... 제일 오른쪽 패널: cmd + option + 0 제일 오른쪽 패널에서도 탭끼리 이동하려면 cmd + option + 1, cmd + option + 2, ... 하단 콘솔창: cmd + shift + Y 어시스턴스 에디터: ctrl + option + cmd + enter 파일 찾아 열기: cmd + shift + O (open) 코드 정렬: ctrl + I (indent)

[ios 개발] 컬럼이 2개인 UIPickerView 구현하기

아래 사진처럼 UIPickerView의 덩어리를 컬럼 또는 컴포넌트라고 부른다. 그래서 아래의 피커뷰는 컬럼(컴포넌트)이 2개인 피커뷰이다. 피커뷰를 사용하려면 컬럼의 갯수에 상관없이 반드시 UIPickerViewDataSource, UIPickerViewDelegate 라는 프로토콜을 채택해야 한다. UIPickerViewDataSource에는 피커뷰의 컬럼(컴포넌트)을 몇 개로 할 것인지와 각 컬럼에는 몇 줄이나 필요한지 설정할 수 있도록 도와주는 메소드들이 있다. UIPickerViewDelegate에는 각 컴포넌트가 가지고 있는 줄에 들어갈 컨텐츠(문자열이거나 UIView), 줄의 너비, 높이를 설정할 수 있는 메소드들이 있고 특히 피커뷰에서 스크롤을 돌려서 어떤 한 데이터를 선택하면 그 데이터의..

[ios 개발] xcode에서 code snippet 코드 스니펫 만들기

xcode에서 class나 struct 같은 키워드를 입력하기 시작하면 글자 밑에 작은 창이 뜨면서 선택할 수 있는 것들이 보인다. 잘 골라서 선택하면 굳이 스펠링을 다 적지 않아도 내가 원하는 것을 선택하면서 빠르게 프로그램을 작성할 수 있게 도와준다. xcode에 기본적으로 내장되어 있는 것들 외에 내가 특별히 자주 쓰는 코드 덩어리가 있다면 코드 스니펫을 직접 만들어 xcode에 등록할 수 있다. 1. 재사용할 코드를 블록 지정한 뒤에 오른쪽 마우스 - Create Code Snippet 선택 2. 새롭게 뜨는 창에서 아래와 같이 필요한 부분을 기입한다. 코드 내부에 파랗게 보이는 부분은 placeholder인데 이렇게 입력하면 '내용' 글자가 파랗게 변하면서 placeholder가 된다. 3. 만..

[ios 개발] UITextFieldDelegate의 유용한 메소드 3가지

UITextField 를 사용하게 되면 ios 키보드도 사용하게 되는데 키보드를 해제하고 싶거나 키보드의 return 버튼을 눌렀을 때 무언가를 하고 싶을때 UITextFieldDelegate 에 선언되어 있는 메소드들 중에 가져다 사용하면 된다. 이 때 해당 뷰 컨트롤러가 UITextFieldDelegate를 채택해야 하고, 뷰 컨트롤러에서 사용하는 UITextField 인스턴스의 delegate에 이 뷰 컨트롤러를 등록해줘야 아래 소개하는 메소드들이 작동한다. class WeatherViewController: UIViewController, UITextFieldDelegate { // UITextFieldDelegate를 채택 @IBOutlet weak var searchTextField: UITe..

[ios 개발] 키보드 사라지게 하기

아주 간단하다 텍스트 필드 인스턴스에다가 endEditing 메소드를 호출하면 된다. import UIKit class WeatherViewController: UIViewController { @IBOutlet weak var searchTextField: UITextField! @IBAction func searchPressed(_ sender: UIButton) { searchTextField.endEditing(true) } } 키보드의 return 버튼을 눌렀을때 사라지게 하고 싶으면 1. 해당 뷰 컨트롤러 클래스에서 UITextFieldDelegate 채택 2. viewDidLoad 에서 searchTextField.delegate = self 3. UITextFieldDelegate 프로토콜..

[xcode] 버튼 모서리를 둥글게 하기

xcode에서 소스 코드로 버튼 모서리를 둥글게 할 수도 있지만 xcode > identify inspector > User Defined Runtime Attributes 에서 + 버튼을 누르고 아래와 같이 입력하면 된다. Key Path: layer.cornerRadius Type: Number Value: 모서리를 둥글게 하고 싶은만큼 숫자 입력 이렇게 하고 나서 시뮬레이터를 작동시키면 모서리가 둥글게 된 버튼을 볼 수 있다.

[xcode] 텍스트 필드에 숫자 키보드 띄우기 (keyboard type)

텍스트 필드 처럼 사용자 입력을 받을 때 입력 받을 내용에 받는 키보드를 띄우는 것이 맞다고 생각한다. 숫자를 입력 받을거면 숫자 키보드가 뜨고, 전화번호를 입력 받을 경우에는 전화번호를 입력하기 편한 키보드가 뜨는 것이 사용자 경험에 좋다. 전화번호를 입력하라고 해놓고서는 일반 키보드가 뜨면 짜증난다... 아무튼 xcode에서 텍스트 필드를 눌렀을 때 나올 키보드 타입을 정하려면 오른쪽 attribute inspector 에서 Keyboard Type 에서 원하는 타입의 키보드를 선택하면 된다. UITextField 클래스가 채택하는 UITextInputTraits 프로토콜에 keyboardType 프로퍼티가 있다. (UIKeyboardType 이라는 enum 타입)

[ios 개발] iOS, iPadOs 버전별 사용 현황 확인하기

웹이건 모바일이건 서비스를 개발할 때 어디부터 지원할 것인지 정해야 한다. 애플 쪽도 아이폰과 아이패드의 몇 퍼센트가 어떤 ios, iPadOs 을 사용하고 있는지 알려주는 사이트가 있다. https://developer.apple.com/kr/support/app-store App Store - 지원 - Apple Developer App Store 사용자는 App Store에서 iPhone, iPad, Mac, Apple TV 및 Apple Watch용 앱을 쉽게 찾고 구입하고 다운로드할 수 있습니다. Apple Developer Program에 등록하여 앱을 디자인 및 개발하고 App Store에 앱을 배포 developer.apple.com 현재 2022년 1월 기준으로 아이폰 기기에서는 72%가..