본문 바로가기

iOS 앱 개발자 프로젝트/iOS 입문

[iOS] UI ↔ Swift Code 연결하기 2024년 3월 21일 목요일 Xcode에서 main Storyboard와 ViewController를 연결하는 기본적인 로직을 정리해 봅니다. #1 Storyboard와 ViewController 연결 #2 @IBOulet 을 사용하여 UITextLabel 과 Code 연결 #3 @IBAction 을 사용하여 UIButton 과 Code 연결 #1 Storyboard와 ViewController 연결 우측 Identity Inspector에서 Custom Class 영역의 Class 부분을 확인하고 해당 부분에서 원하는 커스텀하게 만들어준 ViewController와 연결하기 #2 @IBOutlet 사용하여 UITextLabel ↔ 코드 연결 @IBOutlet이란? 인터페이스 빌더와 코드를 연결하기 위.. 더보기
[iOS] Low-Level Debugger (LLDB) (feat. LLVM) 2024년 3월 20일 수요일 LLDB의 기능과 장점에 대해 정리하고, 브레이크 포인트를 통한 간단한 디버깅을 해본다. LLDB (Low-Level Debugger) - 쉽게 버그를 추적하고, 매번 빌드를 하여 테스트를 해보는 런타임 시간을 줄이기 위해 사용하는 디버거 → 런타임 시 일어나는 논리적 오류를 잡는것이 목표(not 문법적 오류) - Xcode의 기본 디버거로 내장되어 있음 (LLVM의 디버거 컴포넌트를 개발하는 애플의 서브 프로젝트) - LLVM의 프론트엔드에 대응하는 디버거로 간결하고 명확한 에러메시지가 장점 - 로우레벨 컨트롤 가능한 모듈로 이뤄져있으며 기계어에 가까운 영역까지 디버깅 가능(C/C++/Objective-C/Swift 지원) 브레이크 포인트를 활용하여 값을 디버깅 해보기 s.. 더보기
[iOS] AutoLayout - Constraints, AutoLayout Engine, Size Classes, Interface Builder UI 컴포넌트의 위치를 설정하는 AutoLayout 개념에 대해 알아봅니다. Constraints Autolayout의 핵심 개념으로, 뷰와 뷰 사이의 관계를 나타낸다. 뷰의 위치와 크기를 결정하고, 뷰의 상대적인 위치를 설정하는데 사용 ※ Add New Aligment Constraints 와 Add New Constrains 차이점 * Alignment Constraints - 말 그대로 정렬을 통해 뷰의 제약을 설정 * Constraints: 넓은 개념의 제약. 상하좌우 영역을 지정해 뷰의 제약을 설정 AutoLayout Engine 제약 조건을 기반으로 뷰의 최종 위치와 크기를 계산 → 다양한 화면 크기와 방향에 대응할 수 있는 UI 구현 Size Classes 화면 크기와 방향에 따른 뷰의 레이.. 더보기
[iOS] UIView component #2 (UISlider, UISegmentedControl, UIScrollView, UIPickerView, UITableView, UICollectionView) 2024년 3월 19일 화요일 #2 UISlider (값의 범위를 가지고 사용자가 원하는 값을 선택) value: 슬라이더의 현재 값 minimumValue: 슬라이더의 최소값을 설정 maximumValue: 슬라이더의 최대값을 설정 minimumTrackTintColor: 슬라이더의 왼쪽 트랙 색상을 설정 maximumTrackTintColor: 슬라이더의 오른쪽 트랙 색상을 설정 thumbTintColor: 슬라이더의 썸네일 색상을 설정 // UISlider 생성 및 설정 let slider = UISlider() slider.value = 50 // 슬라이더 초기 값 설정 slider.minimumValue = 0 // 슬라이더의 최소값 설정 slider.maximumValue = 100 // 슬라.. 더보기
[iOS] UIView component #1 (UILabel, UIImageView, UITextField, UIButton, UISwitch) 2024년 3월 19일 화요일 #1 UIView는 iOS에서 사용되는 기본적인 View component로 다른 UI Component들은 이 UIView를 상속받아서 필요한 기능을 추가하거나 확장한 Component 입니다. UILabel (텍스트를 표시) text: 표시할 문자열 font: 텍스트의 폰트 textColor: 텍스트의 색상 textAlignment: 텍스트의 정렬을 설정 (왼쪽, 가운데, 오른쪽). numberOfLines: 텍스트의 표시 줄 수를 설정 (0으로 설정하면 자동으로 줄 바꿈된다) lineBreakMode: 텍스트가 너무 길어서 화면에 들어가지 않을 때 줄 바꿈 처리 방법을 설정 // UILabel 생성 및 설정 let label = UILabel() label.text =.. 더보기
[iOS] UIKit - UIViewController, UIView, AutoLayout 2024년 3월 18일 월요일 기본적인 큰 줄기 개념 위주로 훓어보고, 디테일하게 다시 파고들 예정. 실제로 부딪혀 보는 경험이 중요할 것 같다. 📌 UlKit = User Interface Kit 사용자 인터페이스를 관리하고 이벤트 처리가 주목적인 프레임 워크(framework) = Object Library가 모인 뼈대(frame) 📌 UIView 화면을 구성하는 요소의 기본 클래스. 여러 UI 컴포넌트들을 보여준다. 여기서 '요소'란 Label이나 Button과 같은 Components, 하위 클래스 📌 UIViewController 앱의 근간으로, 전체적인 인터페이스의 레이아웃을 관리하며 다른 뷰 컨트롤러와 앱을 구성한다. 📌 AutoLayout 제약 조건(Constraints)을 이용해서 뷰의 .. 더보기