시뮬레이터에서 실행 한 앱 경로 확인하기. 해당 앱의 경로를 Finder에서 확인하기 위해서 다음 코드를 이용하여 상세 경로를 확인해야한다.그렇지 않을경우 Finder에서 하나씩 찾거나, 검색을 이용해서 찾아야 하지만 코드를 통해 경로를 찍는게 정확하다. 12345678 NSFileManager *fileManager = [NSFileManager defaultManager]; NSArray *dirPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentPath = [dirPath objectAtIndex:0]; NSString *path = [NSString string..
정규식을 이용한 생년월일(예시 19990812) 체크.123456789if (birthdayStr.length > 0) { NSString *ptn = @"^[1-2]{1}[0-9]{3}[0-1]{1}[0-9]{1}[0-3]{1}[0-9]{1}$"; NSRange range = [birthday_tf.text rangeOfString:ptn options:NSRegularExpressionSearch]; if( range.length != birthdayStr.length ){ // 오류출력 return; }}Colored by Color Scriptercs 설명1. {1}. 1자리만 체크2.[1-2]. 1~2까지의 숫자만 유효함3. ^. 정규식 시작.4.$. 정규식 종료.
iOS 다음 지도 길찾기 연동 및 설치되어 있지 않을 경우 다음지도 앱스토어로 이동 처리. 1234567891011121314151617181920212223242526272829303132333435363738394041// 다음지도를 통한 길찾기 버튼 클릭 리스너-(void)goNaverMapClick{ NSURL *url = [NSURL URLWithString:[NSString stringWithFormat: @"daummaps://route?sp=%f,%f&ep=%f,%f&by=CAR",mainView.userLatitude, mainView.userLongitude, lat, lon]]; //다음 지도 설치 유무 판단. BOOL isInstall = [[UIApplication sharedAp..
appledoc git : https://github.com/tomaz/appledoc 설치 순서.1. 터미널 실행. 명령어 : git clone https://github.com/tomaz/appledoc.git 2. appledoc 폴더안에 있는 "install-appledoc.sh" 실행. 명령어 : sudo sh install-appledoc.shsudo sh install-appledoc.sh -b /usr/bin -t ~/Library/Application\ Support/appledoc 3. 도큐먼트를 생성할 프로젝트 폴더에 셋팅 된 AppledocSettings.plist 파일을 넣어두고 실행할 경우 해당 plist속성 대로 파일이 만들어져야 하지만 명령어를 잘못 입력해서인지 파일 생성이 ..
시간 설정 시 Picker View에서 시간 제한하기. 사용 목적.푸시 알림을 사용자가 정해준 시간에만 발송하기 위해 시작시간과 종료 시간을 설정.피커를 사용하여 시작 시간은 종료시간보다 작게, 종료시간은 시작시간 보다 크게 설정하기 위해 사용. 결과피커뷰에서 시간을 선택 할 경우 min, max 설정으로 인해 사용자가 시간을 선택 할 수 없게 한다. 코드피커뷰를 닫을 수 있는 View를 추가하여 닫기 버튼 추가.시작시간, 종료시간 label 선택 시 picker를 보여주고, 제한값을 준다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646..
아이폰 6+ 대응하기 위한 이미지 리소스 사용 테스트. 기존 xib에서 자동으로 아이폰6, 6+가 대응되도록 개발되어 있는 환경에서 아이폰6를 대응하기 위해 테스트 해 보았다. \ 위 이미지와 같이 아이폰6까지는 @2x의 이미지를 사용하며, 아이폰6+에서만 @3x이미지를 사용한다. 여기서 특이한 점은 동일한 200px이미지를 아이폰5에서 보았을 때 @2x 처리한 이미지는 깨져서 나오며,@를 처리하지 않은 이미지의 경우 선명하게 나왔다.결국 이미지를 @?x를 써가며 사용할 필요 없이 디자인 가이드에 이미지 크기만 명시되어 있다면이미지 1종에 대해서 추가하면 될 것 같다는 결론이다.
Tag값을 이용한 객체 속성 변경하기. 전역변수로 설정하지 않더라도 Tag를 이용해 객체의 속성을 변경할 수 있다.단 객체가 addSubView된 객체는 전역으로 설정되어 있어야 한다.객체는 어떠한 것도 가능하며 캐스팅해주어야 한다. (객체타입)[뷰 viewWithTag:??]다음 예제는 View에 UIButton, UIimageView를 생성하고, Button 선택 시 ImageView의 backgroundColor를 교체해주는 소스이다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 //팝업 생성.-(void)createPopup{ popupView = [[UIView alloc] initWithF..
iOS에서 youtube 동영상 재생하기. 기존에는 webview를 통해 youtube영상을 재생했지만 구글에서 라이브러리를 제공해주고 있기에 관련 작업이 있어 사용해 보았다. 구글 참조 문서.https://developers.google.com/youtube/v3/guides/ios_youtube_helper위 문서의 cocoaPods 부분을 제외하고 "Adding a YTPlayerView via Interface Builder or the Storyboard" 해당 부분부터 따라하면 된다. 코코팟을 처음 써봤는데 뭔가 싶어 애좀 먹었다. 셋팅은 가능 했지만 원하는대로 되지 않아 결국 포기하고 라이브러리를 수동으로 설치하였다. 추가로 유투브 라이브러리는 설치가 되지 않았다. 다른건 되는데... 진행 ..
문제. 별도의 로그인을 통해 받은 세션값을 웹뷰에 할당하고, 다른 계정으로 로그인 시 기존 쿠키값이 남아있는 문제가 발생. 이를 해결하기 위해 전체 쿠키 삭제. // 모든 캐쉬 삭제-(void)deleteAllCookie {NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];for (NSHTTPCookie *cookie in [storage cookies]){[storage deleteCookie:cookie];} } //특정 도메인만 삭제-(void)deleteCookieDomain:(NSString *)domain {NSHTTPCookieStorage *cookies = [NSHTTPCookieStorage shar..