전체 글
-
ApnsSender 사용하기👻 iOS 2015. 3. 20. 17:36
사용법 Runnable Jar(java 1.7이상에서 작동)이고 사용법은 아래와 같습니다. # 사용법 1. 첨부파일 압축 해제 후 해당 경로로 이동 2. 아래 명령어 입력 - java -jar ApnsSender.jar /Users/유저폴더명/Desktop/APNS/apnsDeskTopTest.txt - args[0] 은 Push전송시 참조할 정보가 담긴 텍스트파일 3. 전송 결과 확인 - [dev, /Users/kimUSER/Desktop/dev_Cert.p12, 12341234, 6f05fca3b49a77759370e3fcc9fb2471ac34c4f9b832870c750, {"aps" : {"alert":"test.", "badge":"1", "category":"invite"}}] // 텍스트 파일..
-
layoutAttributesForElementsInRect 사용시 성능문제👻 iOS 2015. 3. 13. 19:04
UICollectionViewFlowLayout 을 이용해 변형된 레이아웃을 구성하고자 할 때 layoutAttributesForElementsInRect 을 이용해서 필터링된 레이아웃 속성 정보를 뽑아야 하는데.. Array.filter를 사용해보니 스크롤시에 버벅이는 현상이 난다. override func layoutAttributesForElementsInRect(rect: CGRect) -> [AnyObject]? { // layoutAttributes 는 Array로 선언 returnlayoutAttributes.filter { (attributes) -> Bool in return CGRectIntersectsRect(rect, attributes.frame) } } 아래와 같이 NSArray..
-
longPress로 테이블 셀 이동하기👻 iOS 2015. 3. 2. 18:18
UITableViewCell을 longPress를 이용해서 순서를 바꾸는 방법을 정리 tableView에 longPress recognizer를 추가한다. longPress의 상태에 따라 동작을 실행한다. 공통 : 제스쳐의 위치값을 가져와 선택한 셀이 무엇인지 얻어온다. Began : 선택한 셀을 복사해서 화면에 노출시킨 귀 본래의 셀은 hidden 상태로 바꾼다. Changed : tableView의 moveRowAtIndexPath 메소드를 이용해 위치를 바꿔준다. default : 복제된 뷰를 제거하고 본래의 셀의 hidden 상태를 해제한다. 완료 class TableReorderViewController: UITableViewController { var data: [Int] = [] overr..
-
PHPhotoLibrary로 사진 접근권한 요청👻 iOS 2015. 2. 27. 10:22
PHPhotoLibrary.requestAuthorization { (status) -> Void in switch(status){ case .Authorized: println("Authorized") // get data // self.datalist = getData() // reload dispatch_async(dispatch_get_main_queue()) { self.tableView.reloadData(); } case .Denied: println("Denied") case .NotDetermined: println("NotDetermined") case .Restricted: println("Restricted") } }
-
PHAssetCollection 가져올 때 Type과 OS버전을 구분해서 가져오기👻 iOS 2015. 2. 27. 10:18
사진 접근 권한을 요청한 뒤에 권한이 있을 경우에만 계속 실행이 되도록 한다. 그렇지 않으면 초기 권한요청 후 데이터 없음 화면이 보여질 수 있다. func fetchCollections() -> [PHAssetCollection] { let controller = self.navigationController as MSPhotoPickerController; var collections = [PHAssetCollection]() var album: PHFetchResult; var subtypes = controller.collectionSubtypes // has Any if contains(subtypes, PHAssetCollectionSubtype.Any) { var album: PHFetchR..
-
Photos.framework 으로 앨범 가져오기👻 iOS 2015. 2. 24. 14:34
PHAssetCollectionType 과 PHAssetCollectionSubtype 을 지정하여 다양하게 앨범을 가져올 수 있는데, var collection = PHAssetCollection.fetchAssetCollectionsWithType(PHAssetCollectionType.Album, subtype: PHAssetCollectionSubtype.AlbumCloudShared, options: nil) collection.enumerateObjectsUsingBlock { (data, index, stop) -> Void in println(data) } 아래와 같은 간략한 결과를 얻을 수 있었음. .Album - .AlbumRegular 10EFC8AC-97A3-4E4F-8B87-E1A..
-
CoreData 예제👻 iOS 2012. 12. 12. 10:16
// // RootViewController.m // coretest // // Created by jinwoo choi on 12. 12. 12.. // Copyright (c) 2012년 jinwoo choi. All rights reserved. // #import "RootViewController.h" #import "AppDelegate.h" #import "Person.h" @interface RootViewController () @end @implementation RootViewController - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNi..
-
디버깅 툴 - gdb 명령어 소개👻 iOS 2012. 11. 9. 13:28
1. 우선 컴파일 시에 디버깅 정보를 담아야 한다.gcc -g -o [프로그램명] [소스파일명]디버깅 옵션인 -g 으로 컴파일하며, 최적화 옵션인 -O 은 주지 않도록 한다. 2. 실행방법gdb [프로그램명]gdb [프로그램명] [core파일명]gdb [프로그램명] [실행중인프로세스pid] 3. 종료방법qCtrl + d 4. 소스 찾아가기 (list)l : main 함수를 기점으로 소스의 내용이 출력된다l 10 : 10 행 주변의 소스가 출력되는데 10 - 5 행부터 10 + 5행까지 총 10행이 출려된다.l func : func 함수의 소스를 출력l -5 : 기본값으로 10줄이 출력된다고 가정하고, 다음에 출력될 라인이 11라인이라면, 10(마지막라인) - 5 라인을 중심으로 출력된다. 즉, 그대로 1..
-
tableView cell reloadRowAtIndexPaths👻 iOS 2012. 11. 9. 13:01
특정 셀만 새로고침 - (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation NS_AVAILABLE_IOS(3_0);-->[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
-
tableview custom section header👻 iOS 2012. 11. 9. 10:01
섹션 헤더 바꾸기#pragma mark - Table view data source - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 3; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 5; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cel..