![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dtOeow/btqwxkm9wPa/K0Zhz1Y4nQFP6mIaA1V7a0/img.png)
var anOptionalInt: Int? = 10 var anotherOptional = anOptionalInt ?? 0 '??' 코딩하면 자주 보게되는 연산자다. 이런 간단한 코드가 있다고 해 보자! 옵셔널 값인 a가 nil이 아니면 옵셔널 아닌 그냥 int에 담아주는 코드이다. 이런 상황에서 저렇게 길게 코드를 안쓰고, 연산자로 한방에 해결하기 위한게 nil병합연산자 다. 이렇게 쓰면, a가 nil이 아니면 a값이 ! 되어서 나오고, nil이면 0이 들어간다.
Call this method when you want the current object to be the first responder. Calling this method is not a guarantee that the object will become the first responder. UIKit asks the current first responder to resign as first responder, which it might not. If it does, UIKit calls this object's canBecomeFirstRespondermethod, which returns false by default. If this object succeeds in becoming the fir..
textField.pattern = "[a-zA-Z]" 회사에서 코드 살펴보다가 이런 코드가 있었는데...! 뭐였을까 찾아보는 중이다. 정규표현식이라는걸 찾아서 내용을 정리해보려규 한다. 일단 swift에는 정규표현식 라이브러리가 있다. NSRegularExpression..!이라고 부른 것! NS가 붙었으니 Objective-C로 짜여졌다는 것도 알 수 있다. 예제로 좀 더 살펴보자! 만약 내가 인스타같은 서비스를 개발중인데, 해시태그(#)가 붙어있는 단어들만 추출한다고 해 보자. if문으로 떡칠하기에는 나는 너무 바쁜 개발자다. 야근 시렁 그럼 어떻게 하면 좋을까?? 왠지 똑똑한 사람들이 이미 이런 기능을 만들어 뒀을 것 같은 기분이 들지 않는가???? 그걸 해주는게 바로 정규표현식이다. 우리는 정규..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/d9Klx7/btqwxTWU9R0/H3tE1W6gTx6wj4FlxKKaZk/img.png)
$0, $1 단축 인자 이름은, 클로저의 매개 변수 순서대로 $0, $1 ... 이렇게 간다!! result = calculate(a:10, b:10){ $0 + $1 } (심지어 return도 안써줘도 된다... 자동으로 알아...) result = calculate(a:10, b:10, method: { ( left:Int, right:Int ) -> Int in return left + right } ) 일반적인 클로저 폼⭐️⭐️ 난 처음에 in이 뭔지 몰라서 꽤 헤맸는데, 허무하게도 그냥 키워드였다고 한다. ㅜㅠ 클로저에는 여러가지 것들이 더 있는데, 대표적으로 후행 클로저, 반환타입 생략, 단축 인자이름, 암시적 반환 표현 등이 있다. 후행 클로저는 진짜 이상하다 (사실 왜 만들었는지 모르겠음 ..
https://zeddios.tistory.com/302 Xcode ) Playground에 3rd party framework 추가하는 방법 안녕하세요 :) Zedd입니다. 오늘은 Playground!!!! 딱히 빌드도 안해도 되고, 자동으로 빌드가 돼서 그때그때 값을 볼 수 있죠. RxSwift를 해보고싶은데..빌드를 매번하긴 좀......................... Playground.. zeddios.tistory.com 이거 따라하면서 제일 밑 부분에서 막혔는데, 제일 밑에까지 내리면 Playground가 나온다! ++) 또 다른 에러가 났었는데, RxSwift 최신버전을 사용하지 않아서 생긴 문제였다.
scaling - scale to fill : 비율 깨지지만 parent에 맞게 꽉 채움. - scale aspect fit : 비율 지켜서 채우므로 여백이 생길 수 있음. - scale aspect fill : 꽉 채우는데 새어나올 수 있음. 원하지 않으면 .clipsToBound = false 하면 안잘림 positioning -> 위치만 바꿔 줌 - center - top - bottom - left - right - top left - top right - bottom left - bottom right redrawing 용도: 화면을 다시 그리게 해 쥼. 그래야 어플에 반영이 되니까. - redraw
[되는 기능] * reponse/request 메소드, * JSON parameter * response serialization * authentication [여기서 배울 것] * 파일 업로드 * RESTful API에서 데이터를 요청하는 작업 [기본적으로 알고 있어야 하는 내용?] * NSURLSession * NSURLConnection * Cocoapods 설치하기 [예시] - 촬영을 하거나 앨범에서 이미지를 Third-party 서비스에 업로드를 하면, 이미지를 인식하여 이미지에 대한 태그와 이미지에 대한 색상을 알려주는 앱 Imagga는 이미지 인식 Platform-as-a-Service. 사진을 업로드할 url은 content endpoint를, 이미지 인식에는 tagging endpoin..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/WwlOQ/btqvP5rMAul/Qvd1baSUzn7vrXm0zOBwm0/img.png)
참고영상 : https://firebase.google.com/docs/dynamic-links/ios/create iOS에서 동적 링크 만들기 | Firebase Firebase Dynamic Links Builder API를 사용하여 짧거나 긴 동적 링크를 만들 수 있습니다. 이 API는 긴 동적 링크 또는 동적 링크 매개변수가 들어 있는 객체를 취하며 다음 예와 같은 URL을 반환합니다. https://example.com/link/WXYZ https://example.page.link/WXYZ 기본 요건 Firebase 동적 링크를 사용하려면 iOS 8 이상이 필요합니다. 앱에서 iOS 7을 타겟팅해도 되지만 firebase.google.com ** 주의 !! 이 기능은 '애플 개발자 계정' 이 ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b47HZK/btqvQElVZZO/78KPJG4NShUJE6ljch1TZ1/img.png)
WWDC 2019 처음본 나름 후기 : 애플은 진짜 미쳤다. iOS 13 발표, 아이폰 다크모드, 아이패드 전용 OS, 6년만의 맥프로, 새 맥 os인 캐롤리나, 아이패드가 맥북 외장모니터로 사용가능하게 지원, 그리고 대망의 swiftUI.......지금까지 나름 iOS개발 열심히 해왔는데 스위프트유아이 발표로 내 코드가 다 쓰레기가 되어서 슬프다..... 다 배우기도 전에 바뀌어버렸자너;; 이것이 프론트 개발자의 숙-명인가 그리고 wwdc를 보면서 꼭 내년 wwdc에 가고싶어졌다 하지만 600만원은 없으므로 scholarship을 노려보는걸루,,,
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cdlFtL/btqvGBXBjij/2aFKTPFT01HhfvvcGlHHnk/img.png)
Delegate채택을 위해서 In this case, the output of the session is set to an AVCaptureMetaDataOutput object. The AVCaptureMetaDataOutput class is the core part of QR code reading. This class, in combination with the AVCaptureMetadataOutputObjectsDelegate protocol, is used to intercept any metadata found in the input device (the QR code captured by the device's camera) and translate it to a human-readabl..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dL51JW/btqvBNbPxry/Lz6n8RPfnhDmQ9VicmzYKk/img.png)
[사용자 허가 받기] iOS 앱에는 크게 두가지 종류의 위치 받아오는 방법이 있습니다. 1. When In Use * 기본적으로 앱을 사용중일때만 위치 정보를 받아오는 옵션입니다. 백그라운드 상태로 전환 시, location usage indicator (파란색 위치정보 제공중) 가 뜨고, 백그라운드에서 돌게 됩니다. 앱을 켜고 있을 때만 gps를 쓴다면: locationMan.requestWhenInAuthorization() Info.plist의 Information Property List의 딕셔너리에 key-value값 추가해주기 이 경우에는 키를 NSLocationWhenInUsageDescription으로 해야함 만약 특정 지역에 유저가 걸어 들어갔을 때 푸시를 띄워주고 싶다면 develope..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bv0bp4/btqwHdAtGU4/12S4RGes1MjyEzL2tK6Me1/img.png)
Intro 오늘은 하나의 뷰컨트롤러에서 다른 뷰컨트롤러로 데이터를 전달하는 방법을 알아보려고 해요! 지금 제가 하는 프로젝트에서, 저는 저 '시간표 알람 추가' 오른쪽에 있는 테이블 뷰에서 과목 이름, 시작 시간, 종료 시간을 입력받는데 이걸 여기 시간표에서 추가해줘야 하거든요!! 목차 view controller들끼리 데이터를 주고 받는 것은 iOS개발의 매우 중요한 부분이다. 데이터를 주고 받는 것에는 여러 방법이 있고, 각각의 장단점이 있다. 이 기사에서는 6가지 방법을 배울것이다 ((-> property, segue, property와 segue, delegation, closure, NotificationCenter을 이용함)) 제일 쉬운 접근부터 시작해서, 조금조금씩 복잡한 방법까지 써보자 !..
오늘은 datePicker에서 date를 딱 골랐을 때! label에 그 날짜가 나오게 하는 기능을 만들어보려고 합니다. @objc func handleDatePicker(_ datePicker: UIDatePicker) { textField3.text = datePicker.date.formatted } override func viewDidLoad() { super.viewDidLoad() datePicker.addTarget(self, action: #selector(handleDatePicker), forControlEvents: .valueChanged) } extension Date { static let formatter: DateFormatter = { let formatter = Date..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/mEBl6/btqvegZZdbk/pOb6PhoeDRk0s31BBPJoh1/img.png)
어쩐지 뭔가 이상했다........ print()를 찍는데.....아무것도 안나와서,,,,,,진짜로 함수가 call이 안된 줄 알았다...... didselect not working......검색을 개많이 해봐도 원하는 결과가 안나왔는데........ 알고보니..... 왜 오른쪽 네모는 파란색이 아니지...? ...............^^;;;;;;;;;;;;;;;; print is working 이런거 찍은 내 자신이 불쌍하다 흑흑
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/JYQRj/btqvbQgR99b/aywPVrpEyLr0LfKqpGcybK/img.png)
https://stackoverflow.com/questions/33046573/why-do-my-uitableviewcells-turn-grey-when-i-tap-on-them Why do my UITableViewCells turn grey when I tap on them? When I tap on the cells of my table view, they darken to a grey color, and don't turn back to white until I tap on a different cell. Is there some sort of Boolean I have to set for it to not do tha... stackoverflow.com 위에 링크 걸어둔 StackOverFl..
import UserNotifications func goPushAlarm(){ let content = UNMutableNotificationContent() content.title = "🎙✨강의 녹음할 시간이에요🎙✨" content.subtitle = "지금은 미적분학 수업을 녹음할 시간입니다! 시험기간을 위해서 미리 녹음해주세요😚" content.body = "11:00 AM ~ 1:00 PM 미적분학" var date = DateComponents() date.hour = 00 date.minute = 40 let trigger = UNCalendarNotificationTrigger(dateMatching: date, repeats: true) let request = UNNotificatio..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cePDbf/btqu9ztowsg/BZNZabKRm1ukNwXstLdZhK/img.png)
Github는 여러명이 동시에 한 프로젝트의 코드를 쓸 때, 버전관리를 위해서 주로 사용하는 툴입니다. 저는 주로 혼자 개발하기 때문에, 먼저 로컬 xcode에서 작업을 하다가, 아 github에 올려야지..하고 그때야 깃헙에 올리는 경우가 많은데요! 처음부터 github 세팅을 마치고 시작하는게 이상적이긴 하지만, 이 프로젝트가 github에 올릴만큼 오래 지속할 프로젝트인지 모르니, 적당히 작업을 하다가 올리게 되더라고요! 아무튼 '작업중인 xcode 프로젝트'를 깃허브에 연동하는 방법은 다음과 같아요. 그 전에, 프로젝트를 만들 때, Create Git repository on my Mac 에 이미 체크를 했었어야 해요!!!!!!! git을 좀 아시는 분들을 위해 설명을 조금 덧붙여보자면, 이 과정..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bSGnSs/btqu2HXEN8m/KP2ARrbyuHrYondhYPGcsk/img.png)
어케 해결할지 고민하다가 깃헙에 있는 글을 보고 따라해보기로 했다. The only way to get a static UITableView along with other controls on the same screen is to use a Container View. Follow this way, it works perfectly: Drag a ViewController onto your storyboard. Drag a TableViewController onto your storyboard. Next Drag a Container view to your ViewController and size it about the size you want (smaller than the view) -> whe..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/k4GrO/btqu0LHp3lp/tIeuB1zrKrumk4dkYN3Sbk/img.png)
https://www.iosinsight.com/inline-uidatepicker-swift-uiviewcontroller/ Inline UIDatePicker In Swift With UIViewController | iOS Insight This tutorial walks through implementing two inline UIDatePicker controls for selecting date/time values, and is written in Swift. There are examples out there that demonstrate an inline UIDatePicker. However, I’ll be illustrating some key additional featu www.i..
1. class PhotoViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate UIImagePickerControllerDelegate와 UINavigationControllerDelegate를 채택해준다 2. let picker = UIImagePickerController() 3. viewDidLoad에서 picker.delegate = self 4. addPhoto함수에서 UIAlertController와 UIAlertAction을 만들어서 controller에 action을 붙이고, controller을 present해준다. let actionSheet = UIAlertCont..
https://www.edwith.org/boostcamp_ios/lecture/11126/ print , dump String Interpolation : 프로그램 실행 중 문자열 내에 변수 또는 상수의 실질적인 값을 표현하기 위해 사용.\() let variableName: Int = 1 "hello! no. \(variableName) person" import Foundationimport Swift let age: Int = 1 print("Hello, World!")print("Hello! No. \(age) person!")//C언어면 printf("Hello! No. %d person"); 이런식으로 썼을걸 class Person{ var name: String = "yejin" var a..
코코아팟은 “The Cocoa Dependency Manager”로서, Cocoa 환경(macOS, iOS 등) 프로젝트에서 사용하는 라이브러리들을 관리해주는 툴이다. https://zeddios.tistory.com/25 항상 내가 참고하는 글 :) zedd님 최고! ** 라이브러리 여러개 쓸 때 콤마 쓰면 안됨 ** # Pods for __ pod 'Alamofire' pod 'ObjectMapper' pod 'AlamofireObjectMapper' 요런식으로 써줘야됨! 어쩐지 안되더라 또 맨날 하는 실수 pod install 하고 xcworkspace로 여는거 맨날 까먹음... 8ㅅ8 어쩐지 안되더라 pod 자체를 업데이트 할때는 brew upgrade cocoapods
출처: https://www.statista.com/statistics/266136/global-market-share-held-by-smartphone-operating-systems/ 아이폰의 점유율은 2018년 미국 기준 11.9%로, 88%인 안드로이드에 비해 매우 낮다. 하지만 애플의 모바일 시장에서의 수익은 90%에 육박한다. 애플은 매년 9월 새로운 아이폰을 발표하는 행사를 개최한다. 6월에는 새로운 OS를 공개한다. 이 전에 기기 판매 댓수가 줄어드는 것은, 어떻게 보면 당연한 일이다. 몇달만 기다리면 새로운 핸드폰이 공개되는데 누가 핸드폰을 사겠는가? 애플은 신문에 광고를 주지 않는다. 언론은 애플을 통해 돈 벌기가 어렵다. 애플의 정책은 삼성과 다르다. 언론인들은 아무 혜택도 주지 않는..
다운로드 링크 : http://winebottler.kronenberg.org