- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- substr
- 티스토리챌린지
- 연산자
- swiftUI
- r
- 오블완
- ReLU
- rest api
- rxswift
- scheduledTimer
- MVC
- decode
- barplot
- Python
- SQL
- SWIFT
- sigmoid
- HTTP
- cocoapods
- tapply
- Request
- deeplearning
- 시각화
- Linux
- 딥러닝
- struct
- Optional
- ios
- Observable
- 명령어
목록iOS (66)
iOS 개발 기록 블로그

지난 글에서 UITextFieldDelegate 라는 프로토콜이 있었다. 코드 class Bird { var isFemale= true func layEgg() { if isFemale{ print("Lay egg.") } } func fly() { print("Fly.") } } class Eagle: Bird{ func soar() { print("Soar.") } } class Penguin: Bird { func swim() { print("Swim.") } } let myEagle = Eagle() myEagle.fly() myEagle.layEgg() let myPenguin = Penguin() myPenguin.layEgg() myPenguin.swim() myPenguin.fly() 위 ..

생성 스토리보드에서 + 버튼을 눌러 Text Field를 생성하면 된다. 해당 UI를 클릭하면 오른쪽에 속성 인스펙터 창에서 위와 같이 볼 수 있다. Placeholder는 희미하게 보이는 회색 글자이다. Text Input Traits의 Capitalization 속성을 Words로 해주면 단어의 첫 글자가 대문자로 자동 입력된다. 마지막에 Return Key 속성은 키보드의 엔터키를 말한다. ViewController 스크립트에서 UITextField를 컨트롤+드래그앤드롭으로 IBOutlet을 생성하고 오른쪽에 돋보기 버튼을 같은 방법으로 IBAction을 만들어준다. 그리고 실행하면 직접 입력한 텍스트가 출력이 잘 된다. 그러나 다시 지우고 다른 단어를 입력한 뒤 출력해보면 동작하지 않는다. 이걸 ..

배경 이미지를 다크 모드에 따라 변경 낮에 적용할 이미지와 밤에 적용할 이미지 파일을 갖고 있다. 위 방법처럼 Color Set을 만들 필요는 없고 vector images와 PDF Image를 사용하여 해결할 수 있다. 아래와 같이 Assets.xcassets 파일에 background의 이미지 폴더로 간다. 이미지 파일을 열어서 확대해보면 아래와 같이 픽셀이 보인다. vector 이미지로 만들면 위와 같이 계단처럼 보이는 걸 없앨 수 있다. Assets.xcassets 파일에 기존의 이미지를 지운다. pdf 파일을 올리고 우측에 ‘Preserve Vector Data’라는 체크박스를 체크한다. 그리고 아래에 Scale을 Single로 바꾼다. Appearance를 Any, Light, Dark로 변경..

Dark Mode를 적용하는 방법을 알아보자. 아이콘을 아래와 같이 바꾸고 xcode 아래에서 appearance 버튼을 누르면 아래와 같이 다크 모드가 적용된다. 아래와 같이 틴트(컬러)를 커스텀으로 바꾸고 다크 모드를 하면 색이 바뀌지 않는다. 시스템 설정에 따라 다크모드가 적용되게 하려면 Tint를 'System Color' 또는 'Label' 색으로 해야 한다. Custom Color Dark Mode 그러면 Custom Color를 사용하고 다크 모드가 적용되게 하려면 어떡할까? 프로젝트 네비게이터 창에서 Assets.xcassets 파일을 선택해주고 아래에 + 버튼을 눌러 Color Set을 만들어준다. 그리고 우측에 Appearance를 Any, Light, Dark로 선택해준다. 그리고 다..

SF Symbols SF Symbols - Foundations - Human Interface Guidelines - Design - Apple Developer SF Symbols SF Symbols provides thousands of consistent, highly configurable symbols that integrate seamlessly with the San Francisco system font, automatically aligning with text in all weights and sizes. You can use a symbol to convey an object or concept developer.apple.com iOS 하시는 분들은 꼭 알고 가야 하는 HIG(Hu..

Optional을 이해하기 위한 5가지 단계 Force Unwrapping Check for nil value Optional Binding Nil Coalsecing Operator Optional Chaining OptionalsDemo라는새로운 프로젝트 생성 let myOptional: String? myOptional = "CrazyDeer" let text: String = myOptional 위와 같은 코드에서 세번째 줄이 에러가 나온다. text 변수는 String이지만 myOptional이라는 데이터 타입이 String?이기 때문이다. 이 Optional 데이터를 사용하기 위한 방법 5가지인 것이다. 간단한 방법이 이것이다. Force Unwrapping 변수 뒤에 ! 느낌표를 붙여주는 방..

Struct vs Class struct는 properties 값을 주지 않아도 된다. 그러나 class는 init을 해줘야 한다. 코드 class Enemy { // properties var health: Int var damage: Int init(health: Int, damage: Int) { self.health= health self.damage= damage } // functions (methods) func move() { print("Walk forwards.") } func attack() { print("Land a hit, does \(damage)damage.") } } 이렇게 init을 해주면 된다. 그럼 Enemy 클래스에 takeDamage라는 함수를 만들어보자. clas..

이번 글에서는 Swift 뿐만 아니라 다른 언어에서 너무나도 중요한 개념인 'Class'에 대해서 알아볼 것이다. 개념 Class는 아래 링크에서 알아봤던 Struct (Structure, 구조체)와 비슷하고 프로그래밍이 오랜 기간 성장해오면서 발달, 도태, 변화해온 결과물 중 하나이다. iOS(Swift) 구조체(struct) 사용 방법 Swift에서도 역시 구조체(struct)가 있고 그 사용 방법에 대해 알아보자. 개념 스위프트에서 데이터 타입은 Int, Float, String, Boolean, Array, Dictionary 등 여러 가지가 존재한다. 우리는 직접 개인화(커스터 crazydeer.tistory.com 구조체는 Property나 Method들이 담겨 있는 설계도면과 같다고 설명했다..

Slider 사용자에게 수치를 받기 위한 UI인 Slider에 대해 알아보자. 위와 같이 생긴 걸 슬라이더(Slider)라고 한다. 초기 값을 Value라는 속성으로 설정할 수 있고 이어서 최솟값, 최댓값을 설정할 수 있다. 나머지 값들은 추후에 필요 시 알아보는 걸로 하자. 스토리보드에 슬라이더를 Control 키를 누른 채로 드래그 앤 드롭하면 위와 같은 이미지가 나온다. Type을 UISlider로 변경하고 만들어 준다. 여기서 Event를 보면 'Value Changed'라고 이미 되어 있다. 게임 엔진인 유니티와 비슷한데 사용자가 슬라이더를 움직이는 순간 값이 변화하고 그때마다 이벤트로 전달된다는 의미로 보면 된다. 값이 변화할 때마다 콘솔창에 값이 출력되게 해 보자. 여기서 값은 소수점 2자리..

지난 글에서 디자인 패턴 MVC에 대해서 개념과 장점 등을 알아봤다. iOS(Swift) Design Pattern: MVC (Model View Controller) 1편 iOS App 프로그래밍에서 정말 정말 중요한 디자인 패턴 MVC를 알아보자. 우선 이 MVC나 MVVM 등 애플이 채택(?)한 디자인 패턴은 대부분의 채용에 필수요건으로 포함되어 있다. 그만큼 이것은 정말 중 crazydeer.tistory.com 이 MVC 패턴을 실제 프로젝트에 적용해보겠다. 적용 간단한 문제 풀이하는 앱을 MVC 패턴으로 바꿔보겠다. 우선 아래와 같이 Model, View, Controller 폴더를 만들어주고 파일을 옮긴다. 그동안 ViewController.swift 파일에서 전부 다 적었던 코드를 디자인 ..