#4.10 로그인 화면 구성
Parent View에 비례하여 Child View 비율 조정하기
→ Parent 쪽으로 드래그 한 후 Multiplier
Content mode in Instpector
TextFiled
Placeholder
회색 선 : UIView , (Height : 1)
이미지 넣기
#4.11 로그인 화면 - UI추가
Asset - Color set (자주쓰는 Color 설정 가능)
Type : UITextField, Event : Editing Changed(바뀔때마다 호출)
var email = String()
var password = String()
@IBAction func TextFieldEditingChanged(_ sender: UITextField) {
let text = sender.text ?? ""
// 조건 ?? 실행문 : 조건이 거짓일때만 ""를 실행한다는 뜻
// 값이 없을 때(비어있을 때)는 "" 가 존재하게 하여 Wrapping
// sender.text textField의 값을 let 변수에 전달할때 쓰임
// UITextFiled 형의 객체가 Typing이벤트를 let text로 보낸다는 뜻
email = text
} // 입력할 때마다 호출 되는 함수
@IBAction func passwordTextFieldEditingChanged(_ sender: UITextField) {
let text = sender.text ?? ""
password = text
}
#4.12 로그인 화면 - 화면전환
let storyboard = UIStoryboard(name: "Main", bundle: nil)
→ 스토리보드에 UIView 생성 후 CocoaPods으로 RegisterViewController만들어 연결 !
(Identity - StoryBoard ID : RegisterVC 기입 해주기 !
let registerViewController = storyboard.instantiateViewController(withIdentifier
: "RegisterVC") as! RegisterViewController
1번에서 생성한 스토리보드 안에 RegisterVC라는 StoryBoard ID를 가지 뷰 컨트롤러를 생성(instantiate)하겠다는 말씀 . as로 하여금 RegisterViewController를 캐스팅해줌.
self.present(registerViewController, animated
: true, completion: nil
func(registerButtonDidtap)을 실행하면, 해당 ViewController을 보여주겠다는 뜻.(present) 이때 completion은 화면전환 이후 필요동작 기입란.
→ 하지만 이는 바닥에서 화면이 올라오는 애니메이션과 함께 전환이 된다.
navigationController?.pushViewController(registerViewController,
animated: true)
TextField - Button Action 으로 연결해 받은 내용을 변수에게 전달. Controller 내에서 나머지 연산 가능하도록!
Register - 마찬가지로 버튼으로 연결, 화면전환 로직 부여