일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- swift 알고리즘
- swift
- rxswift
- swift gRPC
- swift ac 풀이
- 1 2 3 더하기 풀이
- swift dfs
- swift algorithm
- ios
- 연속된 부분 수열의 합 swift
- swift 2xn 타일링 풀이
- swift 9095 풀이
- swift 2xn 타일링
- swift ac 문제풀이
- 123 더하기 풀이
- 연속된 부분 수열의 합 투포인터
- swift 프로그래머스
- swift 2xn 타일링 백준
- 백준 2xn 타일링 풀이
- swift 연속된 부분 수열의 합 풀이
- swift 백준 9095
- ac 구현 풀이
- iOS Charts
- ac swift 풀이
- 백준 2xn 타일링
- swift 연속된 부분 수열의 합
- swift codility
- ac 투포인터
- swift ac
- MVVM
- Today
- Total
목록
728x90
ios
728x90
반응형
(15)
boraBong
1. UICollectionView의 선택된 셀(아이템)을 표시하는 방법에 대해 알아보겠습니다. collectionView의 대리자가 잘 위임되었다면 우리가 cell을 클릭할(누를) 때마다 실행되는 메서드가 있죠! 바로 collectionView(didSelectItemAt:) 입니다. collectionView(didSelectItemAt:) 지정된 인덱스 경로의 항목이 선택되었음을 대리자에게 알립니다. 우리가 cell을 눌러 이 메서드가 실행되었을 때 우리가 누른 cell은 과연 선택된(isSelected) 상태일까요? cell이 눌렸음을(선택되었음을) 알릴 때 실행되는 didSelectItemAt 메서드 내에서 로그를 찍어보며 알아봅시다! func collectionView(_ collectionV..
✅ map 클로저로 각 항목들을 반영한 결과물을 가진 새로운 배열을 반환합니다. // Declaration func map(transform: (T) -> U) -> Array [x1, x2, ... xn].map(f) -> [f(x1), f(x2), ... , f(xn)] // transform을 지원하는 클로저는 변경된 값을 반환하기 위해 해당 타입의 값을 반환해야 합니다. // 다음은 [1, 2, 3, 4]인 배열에서 2씩 곱한 배열을 얻는 예제입니다. let array = [0, 1, 2, 3] let multipliedArray = array.map( { (value: Int) -> Int in return value * 2 } ) // [2, 4, 6, 8] // map에서도 추론하여 코드를 ..
네트워크 기반에서 URL을 요청할 때 Data(contentsOf: url) 메서드보다 dataTask(with:completionHandler:) 메서드를 권장하는데요, 그 이유에 대해서 알아봅시다! 🍎 Data(contentsOf: url) → 동기적으로 데이터를 다운받는 방법 init?(contentsOf url: URL) Data(contentsOf: url) 메서드를 사용하여 data://URL을 NSData 개체로 변환합니다. 또한 짧은 파일을 동기적으로 읽는 데 사용할 수도 있습니다. ⚠️ 네트워크 기반에서 URL을 요청할 때Data(contentsOf: url) 메서드를 권장하지 않는 이유 Data(contentsOf: url) 동기식 이니셜라이저를 사용하여 네트워크 기반 URL을 요청하지..
3) 🔥 RxSwift 정복 1️⃣ 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 2️⃣ Observable로 오는 데이터를 받아서 처리하는 방법 👍🏻 위 두가지만 잘 익혀두면 RxSwift를 정복한다고 합니다 :) :) 🙋🏻♀️🙋🏻♀️ 1️⃣ 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 // 1. 비동기로 생기는 데이터를 Observable로 감싸서 리턴하는 방법 return Observable.create() { emitter in emitter.onNext("hello") emitter.onNext("world") emitter.onCompleted() return Disposables.create() } 일단 Observable.create()를 해..
📌 1.RxSwift를 사용한 비동기 프로그래밍 1) ✨ 유틸리티의 등장, RxSwift RxSwift를 사용하면 downloadJson(MEMBER_LIST_URL) .subscribe { json in self.editView.text = json self.setVisibleWithAnimation(self.activityIndicator, false) } ‘나중에오면’ 이라는 부분을 subscribe라고 쓰고 ‘나중에생기는데이터’ 라는 부분을 observable이라고 사용합니다. 그래서 observable을 만들어서 return을 하게 되는데! 👉🏻 이때 observable을 만들 때는 create라는 함수를 호출합니다. " Observable.create() " Observable.create()..
#Swift how to make hyperlink text in textView 안녕하세요!! 보라봉입니다💜 오늘은 iOS에서 1️⃣ 텍스트뷰의 텍스트에 링크 형태가 있다면 해당 텍스트를 링크로 변환하는 방법과 2️⃣ 변환된 링크를 클릭하여 인앱 브라우저로 연결하는 방법을 알아볼 거에요!! 1번을 손쉽게 구현하기 위해서 텍스트를 표현할 때 기본적으로 사용하는 컴포넌트인 UILabel을 사용하지 않고, UITextView를 사용해보려 합니다. 그리고, 2번을 구현하기 위해 SafariServices를 이용하려 합니다 :) ** iOS에서 링크로 웹사이트 연결하는 방법이 궁금하시다면 https://borabong.tistory.com/13 포스트를 참고해주세요! 1️⃣ textView의 text에 link..
📌 1.RxSwift를 사용한 비동기 프로그래밍 1) ⚙️ Swift의 비동기 처리? [Swift의 비동기 처리 방식] UI -> 메인 스레드 나머지 -> global 스레드 이렇게 return 형태가 있는 downloadJson함수는 반환값이 있기 때문에 변수에(위 코드에서 json) 값을 할당해서 가독성있게 코드를 짤 수 있었지만 let json = self.downloadJson(MEMBER_LIST_URL) 📌 비동기 처리를 위한 dispatchQueue 부분을 (downloadJson)함수 내로 옮기면 함수에서 결과값을 return해주는 방식을 사용할 수 없기에 completion을 활용한 클로저 형태로 값을 반환해야 합니다. → 그래서 downloadJson 함수를 클로저 형태로 바꾸면 아래와..
#Swift how to back swipe gesture when navigationBar is hidden 안녕하세요ㅎㅅㅎ 보라봉입니다💜 오늘은 iOS에서 백 스와이프 제스처를 이용해 ⬅️ 뒤로가기하는 방법을 알아볼 거에요!! 뒤로가는 방법은 아주 간단한데요~ ✅ navigationController의 interactivePopGestureRecognizer의 대리인을 nil로 지정해주면 됩니다! self.navigationController?.interactivePopGestureRecognizer?.delegate = nil 1️⃣우선 NavigationController를 Embed in 해줍니다. 2️⃣네비게이션바가 없을 때 백 스와이프 제스처를 사용해야하므로 코드로 네비게이션바(navigat..