전체태그 보기

#iOS (24개의 포스트)

iOS앱 TDD로 개발하기 #1
gwangyonglee

iOS앱 TDD로 개발하기 #1

약 18시간 전0개의 댓글
안녕하세요. 크몽에서 iOS앱을 개발중인 gwangyonglee(harry)입니다. 크몽 기술 블로그에서 포스팅했었는데, 개인 블로그에서도 포스팅하려고 합니다! 이 글은 TDD를 설명하는 글이 아닌 iOS 앱 TDD 적용기에 대해 작성해보려고 합니다. 1,2로 나누어서 작성할 예정이고, 1에서는 TDD를 적용하게 된 계기와 어떤 식으로 적용하였는지...
iOS 프레임워크 #CocoaTouch #Foundation #UIkit
wan088
코코아(Cocoa) 먼저 코코아(Cocoa)라는 단어는, NSObject를 상속받는 모든 클래스, 모든 객체를 가리킬 때 사용하는 단어다. 그렇다면 왜 이름이 하필 코코아일까? 참조 https://www.edwith.org/boostcourse-ios/lecture/17996/ https://pole2win.tistory.com/entry/Ob...
[iOS Youtube Clone 앱 개발] #1 기본 레이아웃
wan088
* 본 프로젝트는 해외 유튜버 "Lets Build that App" 님의 영상을 참고하여 주요 내용만 요약했습니다. \\* 코드 깃허브 링크 StoryBoard와 이별하기 적절한 인자를 받아서 [NSLayoutConstraint] 배열을 반환하는 함수. 특이한점은 withVisualFormat이라는 인자로 독특한 표현식의 문자열을 받는다는 ...
honeysuckle
React를 사용한 웹개발 경험이 있으면, React Native를 이용한 앱개발을 고려하게 됩니다. React Native를 이용하여 앱을 개발시 미리 알았더라면 하는 내용입니다. 1. React로 웹 개발해 봤으면 바로 시작 할 수 있는거 아냐? React로 웹을 만들어 봤으면 동일한 구조로 진행 할 수는 있습니다. div는 View로 바꾸고, ...
sogih
앞에서 배운 Alert와 Notification을 활용해서 간단한 Reminder 앱을 만들어 보기로 했다. 앱에서 구현할 기능은 Text Field에서 메시지를 입력받고, Date Picker에서 날짜와 시간을 입력받은 뒤에 입력받은 시간에 입력받은 메시지를 Noti 알림으로 띄워주는 것이다. 4FDD1863-1701-474F-834D-7E068098F...
sogih
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. * 로컬 알림은 앱 내부에서 만든 특정 메시지를 iOS의 알림 센터를 통해 전달하는 방법이다 * 앱이 종료되어 있거나 백그라운드 상태일 때 메시지를 전달할 수 있다 * 로컬 알림을 구현하기 위해서는 UserNotification 프레임워크...
sogih
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. 사용자에게 메시지를 전달하는 방법은 여러가지가 있다. * 앱이 실행 중일 때만 동작 * 메시지창(알림창) * 앱이 실행 중이지 않아도 동작 * Local Push * Server Push 오늘은 이중에서 앱이 실행 중일 때만 동작하...
sogih
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. 1. 직접 전달 방식(동기 방식) * 뷰 컨트롤러 - 뷰 컨트롤러 2. 간접 전달 방식(비동기 방식) * 뷰 컨트롤러 - 저장소 - 뷰 컨트롤러 💡 직접 전달 방식 (VC1에서 VC2로 바로 값을 전달) - VC1에서 VC2로...
sogih

화면 전환

2019년 5월 7일0개의 댓글
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. iOS의 화면 전환 방식 * 소스 코드에서 구현하는 방식 * 프로그래밍 방식 * 동적 화면 전환 * 스토리보드에서 구현하는 방식 * GUI 방식 * 정적 화면 전환 iOS에서의 화면 전환 개념 - 1. 뷰 컨트롤러의 뷰 위에 다...
sogih

@IBOutlet과 @IBAction

2019년 5월 7일0개의 댓글
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. @IBOutlet과 @IBAction을 모아서 Interface Builder Annotation이라고 부른다. 이 어노테이션이 붙은 프로퍼티나 메소드는 처음에 앱이 빌드될 때 컴파일러가 체크하고 연결 정보를 찾아 인터페이스 빌더의 객체와...
sogih

앱을 구성하는 핵심 객체들

2019년 5월 7일0개의 댓글
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. iOS 유저 인터페이스의 표현 구조 - * Window * 콘텐츠를 가진 뷰를 내부에 배치하여 화면에 출력 * 고정된 윈도우 객체에 대해서 기존의 뷰가 반응하거나 다른 뷰로 전환하면서 화면이 바뀜 * View * 윈도우의 일부를 자신...
sogih

iOS와 코코아 터치 프레임워크

2019년 5월 6일0개의 댓글
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. * UIApplication, UIViewController, UILavel, UIButton ... * 위의 클래스는 스위프트 자체에서 제공하는 것이 아닌 UIKit 프레임워크에 속해 있는것이다. * 따라서 이러한 클래스를 사용하기 위해...
sogih

앱의 상태 변화

2019년 5월 5일0개의 댓글
iOS에서 앱이 가질 수 있는 상태값 - * Not Running : 앱이 시작되지 않았거나 실행되었지만 종료된 상태 * Inactive : 앱이 전면에서 실행 중이지만, 아무런 이벤트를 받지 않고 있는 상태 * Active : 앱이 전면에서 실행 중이며, 이벤트를 받고 있는 상태 * Background : 앱이 백그라운드에 있지만 여전히 코드가 실행되고 ...
sogih

MVC 패턴

2019년 5월 5일0개의 댓글
도서 '꼼꼼한 재은 씨의 스위프트: 기본편'을 공부하면서 정리한 내용입니다. 전체 목록은 여기에서 볼 수 있습니다. MVC 패턴이란? - 소스 코드 설계 기법으로써, 모델(Model) - 뷰(View) - 컨트롤러(Controller)로 이어지는 세 개의 핵심 구조를 이용하여 애플리케이션을 설계하는 것 * Model : 데이터를 담당 * View :...
[iOS] TabBar shadow 커스터마이징
leejh3224

[iOS] TabBar shadow 커스터마이징

2019년 4월 14일0개의 댓글
iOS TabBar의 기본 Shadow를 커스터마이징하려면 먼저 기본 shadow 스타일을 빈 이미지로 초기화한 다음 커스텀 스타일을 적용해야 한다. 그러므로 UITabBarController를 상속하는 CustomTabBarController를 만들고 viewDidLoad에서 스타일을 설정하게 해줬다. 끝! Screen Shot 2019-04-1...
[iOS] Async Unit Test
p_ssungnni

[iOS] Async Unit Test

2019년 2월 19일0개의 댓글
생각보다 길어진 웹 작업이 끝나고, 다시 Xcode로 돌아올 시간! 구현은 다 했는데 아직 앱 테스트가 남아있었다. 이번 업데이트는 비동기 작업이 많았는데 비동기 테스트는 또 어떻게 해야하는지 몰라서 뒷전으로 미뤄두었다가 테스트 - 구현이 아닌 선 구현 후 테스트를 진행하게 됐다.... :( 사실 아직 테스트 코드를 많이 작성해보지 않아서 XCTAsse...
p_ssungnni
RxSwift를 공부하며 pilgwon님이 번역하신 예제를 따라해 보고 제가 알아보기 쉽도록 정리해둔 글입니다. ㅁ 예제 1 - City Searcher 만들기 - 도시 이름을 입력하면 동적으로 도시 목록을 보여줌. ㅁ Code ㅇ UI - input: - Paris - output: - query: Paris - 이전...
jsoh

[iOS] 제약을 활용한 애니메이션

2019년 1월 9일0개의 댓글
안드로이드 개발자로서 iOS 개발을 하며 무수한 삽질을 했다. 무수한 삽질에 대해서는 각자 StackOverflow의 무수한 답들을 보면서 접하시고 이 포스트에서는 답만 정리하겠다. 그 중에 특 정 뷰를 상태에 따라 애니메이션하여 나타나게 하고 숨기는 것의 삽질 끝에 최종 버전이다. 본인이 기억할 수 있도록 이번에도 기록을 남긴다. 구글 지도에서 마커...
jsoh
UITableView의 아이템들의 높이가 다를 때 reloadData하면 스크롤 위치가 엉뚱한 곳으로 점프한다. 검색 해 보면 스크롤 위치를 저장, 복원하는 별의별 방법이 있는데 다 필요없고 이럴 때는 미리 계산된 셀들의 높이를 저장해 두고 복원하는 방법이 가장 간단한 듯 하다. 엄청난 삽질을 했기 때문에 기록 해 둔다.
jsoh
iOS 개발하며 프레임워크의 완성도가 안드로이드에 비해 좋다고 느끼고 있다. 단 하나만 빼고. 안드로이드의 EditText에 해당하는 입력 필드인 TextField에 입력할 때 키보드가 올라오면서 레이아웃을 덮어버린다. 그래서 화면 하단에 입력창이 있을 때 내가 뭘 쓰는지 보이지 않는다. 게다가 입력창 옆에 버튼이라도 있으면 누를 수가 없다. 엔터키 동...