적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

반응형

분류 전체보기 568

[Toy Project] Shopping List 장보기 앱 만들기

커플 앱은 들어가야할 기능도 너무 많고 하나하나 추가하다보니 생각보다 너무 오래 걸릴 것 같아서 반성한번 하고, 앱스토어 등록을 목표로 좀 더 간단하게 한 기능에만 집중한 토이 프로젝트를 만들어보기로 했다. 첫번째는 Shopping List 장보기 앱 만들기! 아주 간단하게 필요한 기능만 구현하도록 만들어보겠다. 간단한 기능이지만 만들기는 간단하진 않은 것 같다. ㅎㅎㅎ 1. tableview 만들기 2. uitableviewcell 속성의 custom cell 만들어 넣어주기 3. custom cell 내 버튼 이벤트 추가

[Trend] 소셜 미디어의 미래, '음성'에 달렸다?

부쩍 눈이 많이 피로해진 것 같다. 시력도 급격히 떨어졌다. 나뿐만 아니라 주변의 많은 사람들이 요즘 그런 이야기를 많이 한다. 우리는 하루에 눈을 얼마나 많이 혹사시킬까. 일어나자마자 핸드폰을 보고 회사에서는 컴퓨터를 집에서는 텔레비전을 혹은 또다시 핸드폰을 보며 쉬지도 않고 계속 무언가를 본다. 아마 우리의 눈들은 이미 지칠대로 지쳤을 것이다. 기존의 소셜 미디어는 우리의 '눈과 손'으로 활동을 했다면, 음성 기반의 미디어에서는 '귀와 입'이 소통의 도구가 된다. 최근 클럽하우스, 디스코드 등 오디오 기반 소셜 플랫폼들이 인기를 끌면서 '음성'이 소셜미디어의 미래를 좌우할 것이라는 분석도 나오고 있다. 보는 것보다 듣는 게 더 편해진 시대가 온 것이다. 음성 플랫폼이 주목받게 된 데에는 코로나도 크게..

Trend 2021.03.19

데이터 저장 1 - 프로퍼티 리스트

1. 프로퍼티 리스트란? 프로퍼티 리스트 : 애플의 주요 소프트웨어 프레임워크에 이용되는 객체 직렬화를 위한 XML 형식의 파일로, plist 파일이라고 부르기도 한다. 비교적 단순하고 간단한 데이터를 XML 포맷에 맞추어 key-value 형식으로 저장하는 것. *객체 직렬화 : 객체의 내용을 바이트 단위로 변환하여 파일에 기록하거나 네트워크 통해 전달이 가능하도록 하는 것 *XML : Extensible Markup Language 단순성, 일반성 그리고 인터넷을 통한 사용성을 강조하여 설계된 텍스트 데이터 형식의 다목적 마크업 언어 대부분 앱의 공통 데이터나 주요 설정 정보를 저장하는 데에 쓰임. iOS 기반 프로젝트에서 볼 수 있는 Info.plist 파일은 앱의 빌드와 실행에 필요한 환경 설정값..

코코아 터치 프레임워크에서의 데이터 저장 방식

앱을 실행하는 동안 생성된 모든 데이터는 기본적으로 '메모리'에 저장된다. 메모리에 저장되는 데이터는 쉽게 읽고 쓸 수 있는 반면, 앱이 종료되는 순간 모두 지워진다는 단점이 있다. 이에 코코아 터치 프레임워크는 데이터를 반영구적으로 저장하기 위해 여러 가지 방법을 제공한다. 데이터의 내용과 형식, 그리고 규모를 고려하여 저장방식을 선택해야 한다. 코코아 터치 프레임 워크에서 선택 가능한 데이터 저장 방식은 데이터의 복잡도와 특성에 따라 크게 세가지로 나눌 수 있다. 1. 프로퍼티 리스트 비교적 간단하고 짧으면서 키-값(key-value) 형태로 단순화할 수 있는 데이터의 저장에는 프로퍼티 리스트가 사용됨. 개인 정보나 로그인 데이터, 환경 설정값을 저장해야 할 때가 대표적인 경우. 종류 : iOS 기본..

Github README file 작성하는 법 (markdown 사용법)

깃허브 프로젝트에 첫 Readme 파일을 작성해보았다 > 를 사용해 인용구 처럼 block quote을 넣을 수 있다. >프로젝트 한줄설명 글머리 기호 순서가 없는 목록을 출력할 때에는 +, *, - 이렇게 총 3가지의 기호가 동일한 출력을 불러온다. * 토마토 - 오이 + 감자 코드블럭 ``` 로 텍스트를 감싸주면 코드블럭으로 보여줄 수 있다. ``` pod 'googleapis', :path => '.' pod 'Alamofire' ``` ``` swift 이렇게 언어를 함께 써주면 언어 색깔에 맞춰서 코드블럭을 생성할 수도 있다. 강조 이미지 파일 넣기 해당 Repository에 [Isuues - New issue] 들어가서 원하는 사진을 드래그 앤 드랍 해주면 업로드가 된다. ![파일 이름](ht..

Github 2021.03.18

[Swift ] Ternary Operator

Ternary operator란? ternary operator를 직역하면 '삼항 연산자'로 말 그대로 세 개의 값을 가지고 연산? 처리를 해준다. 첫 번째 값에 지정된 조건으로 참/거짓 여부를 판별한 뒤, 참이면 두 번째 값을 반환하고, 거짓이면 세 번째 값을 반환한다. [ 조건 ? 참 : 거짓 ] let number = 3 print(number > 5 ? "yes" : "no") 이거를 풀어서 코드를 작성하면 let number = 3 if number > 5 { print("yes") } else { print("no") } 이것과 동일한 기능을 하는데, 이처럼 간단한 조건문이라면 ternary를 사용하여 4줄 짜리를 1줄로 간결하게 작성할 수 있다.

[Swift iOS] tableView 안에 Date Picker 넣는 법?

달력에 일정을 추가하기 위해 Date Picker로 날짜를 선택할 수 있는 cell을 만들어보았다. cell 에 들어가는 item들을 배열로 설정할 경우, var items = ["날짜", "", "시간", "위치"] 이렇게 Date Picker가 들어갈 자리를 빈 cell 로 설정하여, 날짜 cell 을 터치 시 나타나고 default 값으로는 숨어서 보이지 않는 형태로 만들어 볼 것이다. 1. UIDatePicker() 추가하기 DatePickerCell을 UITableViewCell 클래스로 따로 만들어 넣어주는 방법도 있던데, 나는 섹션도 여러개고 행도 여러개이기 때문에 cell 마다 클래스를 따로 만들어주면 너무 복잡할 것 같아서 그냥 내부에서 설정해주었다. var datePicker = UID..

[Swift iOS] UIAlertController로 alert 창 띄우기

let alert = UIAlertController(title: nil, message: "내용을 입력해주세요", preferredStyle: .alert) alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil)) self.present(alert, animated: true) tableView에서 항목 추가를 위해 모달을 띄우고, 입력을 받아오는데 혹시나 입력값이 없는데도 save 버튼을 눌렀을 때 내용을 입력하라는 경고창을 띄워보았다. class AddListViewController: UIViewController { var inputText = UITextField() ... @objc func save(sender: ..

728x90
반응형