본문 바로가기

분류 전체보기326

Delegation Programming Design Pattern Delegation : 위임 Delegate : 위임하다 어떤 객체가 자신이 할일을 다른 객체에게 위임하는 형태 언제 써야 하나? Use to break up large classes or create generic, reusable components. UIKit 에서 가장 흔하게 쓰입니다. (e.g. ~DataSource , ~Delegate 가 들어간 이름들) DataSource: 데이터를 제공 (e.g. UITableViewDataSource : UITableViewCell 를 제공 to display) Delegate: 데이터나 이벤트를 받음 (e.g. UITableViewDelegate : row가 선택될 때마다 알림제공) 주의사항 매우 유용하지만 과하게 사용할 수 있다. 하나의 객체에 대해 .. 2021. 12. 15.
UISlider Control event 이전에 사용했던 UIButton과 달리 value changed event일 때, action을 호출한다. 다양한 이벤트가 존재함. 내가 사용하는 것마다 event가 다르기때문에 공식문서 참고 https://developer.apple.com/documentation/uikit/uicontrol/event Apple Developer Documentation developer.apple.com 2021. 12. 15.
Gesture Recognizer 제스쳐인식기는 스토리보드에서 오브젝트 추가를 통해 생성할 수 있습니다 원하는 제스쳐를 찾아서 뷰컨트롤러에 드래그 적용시 뷰컨트롤러의 상단에 표시가 됩니다. 실제로 작동하기 위해서는 1. 링크시킨다 2. 액션에 대한 코드도 작성이 돼야합니다. @IBAction func tapBackground(_ sender: UITapGestureRecognizer) { print("tap background view") // self.view.endEditing(true) // self.inputField.resignFirstResponder() // self.inputField.endEditing(true) } 주석처리한 3가지 코드는 텍스트필드에 입력하고 마쳤을때, 화면을 터치시 키보드가 사라지도록 설정하기 위한 .. 2021. 12. 15.
2주차 프로젝트03_업다운게임 1. 목표 : Outlet과 Action을 구현해 버튼만들기, 화면터치시 제스쳐 인식하기 IBOutlet IBAction Gesture Recognizer 링크된 것들 이름 바꾸기 Mark: 입력하기 2. 구현화면 - 왼쪽label: start!, up! down! 정답입니다! 메세지 출력 - 오른쪽label: 제출한 숫자 카운트 - textfield: 숫자를 입력하는 곳 - 제출button: 입력값 없음, 입력값이 잘못되었음 등의 출력을 나타낼수 있도록 함수 설정 3. gesture recognizer 4. 링크된 요소들의 이름을 바꿀경우 Editor - refactor - rename에서 수정가능 5. Mark: 주석 입력하기 // Mark: [입력] // Mark:- 입력시 구분선 생성 2021. 12. 15.
211214(화) 입사_9일차 셀프 피드백 9일차 셀프 피드백 2021.12. 14 (화) 유료강의시청 오전 양: ⭐️ ⭐️ ⭐️ ⭐️ 몰입도 : ⭐️ ⭐️ ⭐️⭐️ -> 인터넷강의로 집중이 잘 안됨. 오후 양: ⭐️ ⭐️ ⭐️ ⭐️ ⭐️ 몰입도 : ⭐️ ⭐️ ⭐️ ⭐️ ⭐️ -> 3번까지 완료 ☐ 모르는 점 - 웹뷰 를 사용할 때, url 세팅에 m.을 꼭 붙여아하는가? - NSURLERRORDomain error - 999 에러 생성 - url 정보수정이 바로 안되는 이유는? ☐ 배운점 1. 웹브라우저 만들기 - WKwebView를 통해 웹페이지 띄우기 - 뒤로가기 앞으로가리 새로고침 등 UIbutton 적용하기 2. 내소개 어플리케이션 - 텍스트필드 사용하기 - UIKit 아웃라인 이해하기 - AutoLayout적용하기 - HIG(Human.. 2021. 12. 14.
UITextfield에 입력후 키보드 숨기기 우리가 핸드폰을 사용할 때, 당연하게 생각해왔던 것 중 하나는 "텍스트를 입력하고 나면 키보드가 자연스럽게 사라지는 것이다." 그 당연한 것들이 개발자의 세계에서는 당연하지 않고 하나하나 지정해줘야하는 것이다. 이걸 처리 하지않으면 입력이 끝나도 키보드는 영원히 화면에 남는다. Textfield가 이미 만들어져있는 상황,, override func touchesBegan(_ touches: Set, with event: UIEvent?){ self.view.endEditing(true) } 이 코드만 viewController의 아무곳에나 추가하면 된다. + 또다른 방법 // UITapgestureRecognizer를 선언해 둔 상태에서 함수안에 아래 코드를 삽입하고 셋중에 아무거나 사용해도된다. @IB.. 2021. 12. 14.
2주차 프로젝트02_프로필 목표 UIKit 둘러보기 Auto Layout 알아보기 Human Interface Guideline for iOS 알아보기 View Programming Guide 알아보기 UIKit에 대해서는 다른 포스팅에 정리했다. https://h1guitar.tistory.com/133 UIKit 알아보기 UIKit User Interface Kit iOS 또는 tvOS의 사용자 인터페이스 구성을 위한 프레임워크 Foundation 프레임워크와 더불어 iOS의 대부분의 큰 기능을 이루는 뼈대 UIKit은 이미 Foundation을 import하고 있다. 각각.. h1guitar.tistory.com https://developer.apple.com/documentation/uikit Apple Developer.. 2021. 12. 14.
2주차 프로젝트01_웹브라우저 목표 : WKWebView를 통해 웹페이지 보여주기 1. 버튼구현 : 뒤로가기, 앞으로가기, 새로고침 2. 마지막 페이지 저장 3. 다시 실행시 로드 13버전 이상의 세팅 sceneDelegate는 사용하지않을 때 참고사항 https://velog.io/@dev-lena/iOS-AppDelegate%EC%99%80-SceneDelegate [iOS] AppDelegate와 SceneDelegate Xcode에서 프로젝트를 생성하면 자동으로 AppDelegate.swift와 SceneDelegate.swift 파일이 추가되어 있어요! 오늘은 이 두 swift 파일에 있는 AppDelegate클래스와 SceneDelegate클래스에 대해서 알아보려고해요 😄 velog.io 실행화면 문제점: 1. 구글에서만 .. 2021. 12. 14.
UIKit 알아보기 UIKit User Interface Kit iOS 또는 tvOS의 사용자 인터페이스 구성을 위한 프레임워크 Foundation 프레임워크와 더불어 iOS의 대부분의 큰 기능을 이루는 뼈대 UIKit은 이미 Foundation을 import하고 있다. 각각의 공식문서들을 보면서 하나씩 익히는 게 좋다. -> 각 부분에 Important같은 것들을 꼭 숙지할 것 https://developer.apple.com/documentation/uikit Apple Developer Documentation developer.apple.com 2021. 12. 14.
211213(월) 입사_8일차 셀프 피드백 6일차 셀프 피드백 2021.12. 13 (월) 지난 한주간 스위프트 공부한 것, 알고리즘 과제를 총정리해서 발표하는 시간을 가졌습니다. 오전 양: ⭐️ ⭐️ ⭐️ ⭐️ 몰입도 : ⭐️ ⭐️ ⭐️ ⭐️⭐️ 오후 양: ⭐️ ⭐️ ⭐️ 몰입도 : ⭐️ ⭐️ ⭐️ -> 프레젠테이션 후, 급격한 체력 감소. ☐ 모르는 점 - if-let, guard-let - for 문 보충하기 - 반환타입이 없는 함수 - 중첩함수 추가설명 - 클로저 패턴 추가 설명 ☐ 배운점 - xcode 사용요령 - 프레젠테이션 - guard let를 사용하고 리턴값 받기 ☐ 개선할 점 프레젠테이션 한번했다고 체력이 바닥났다. 운동 더 열심히!! ☐ 목표와 마감기한 - 10개 강의 실습하기 금요일까지 마칠것 - 알고리즘 : 최대공약수. 최.. 2021. 12. 13.