[iOS6] 자주쓰는 팁 정리
CFBundleDisplayName = "페이스트보드 테스트"
- App이 표시되는 이름을 변경하고, 지역화 하기.
InfoPlist.strings에 표시 이름 추가하기CFBundleDisplayName = "페이스트보드 테스트"
- AppDelegate에서 rootViewController읽어오기
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. NSLog(@"didFinishLaunchingWithOptions"); if ([self.window.rootViewController isKindOfClass:[DBUViewController class]]) { _viewController = (DBUViewController *)self.window.rootViewController; } return YES; }
- App실행 될 때, Noti에서 선택되어 들어왔는지 알아내기
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. if ([self.window.rootViewController isKindOfClass:[DBUViewController class]]) { _viewController = (DBUViewController *)self.window.rootViewController; } UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]; if(notification) { //데이터가 있다. NSString *log = [NSString stringWithFormat:@"didFinishLaunchingWithOption: local noti: %@", notification.alertBody]; [_viewController addLog: log]; if (notification.userInfo) { [_viewController addLog:[notification.userInfo description]]; } } return YES; }
- UIColor에서 CIColor 얻기
UIColor의 경우, 지원 함수에서는 값을 읽는 것은 없는 것 같습니다.CGColorRef를 얻어서, CIColor로 변경하고, red, green, blue, alpha를 읽어서 값을 알아낼 수 있습니다.
CGColorRef cRef = [UIColor lightGrayColor].CGColor; CIColor *color = [CIColor colorWithCGColor:cRef]; NSLog(@"%0.4f, %0.4f, %0.4f, %0.4f", color.red, color.green, color.blue, color.alpha);
- UIView의 내용을 이미지로 그리기
// Screen shot the view + (UIImage *) imageFromView: (UIView *) theView { UIGraphicsBeginImageContext(theView.frame.size); CGContextRef context = UIGraphicsGetCurrentContext(); [theView.layer renderInContext:context]; UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return theImage; } + (void) saveImage: (UIImage *) image toPDFFile: (NSString *) path { CGRect theBounds = (CGRect){.size=image.size}; UIGraphicsBeginPDFContextToFile(path, theBounds, nil); { UIGraphicsBeginPDFPage(); [image drawInRect:theBounds]; } UIGraphicsEndPDFContext(); } + (void) performScreenshot { UIWindow *window = [[UIApplication sharedApplication] keyWindow]; UIImage *screenshot = [self imageFromView:window]; NSString *destination = [NSHomeDirectory() stringByAppendingString:@"/Documents/Screenshot.pdf"]; NSLog(@"%@",destination); if ([[NSFileManager defaultManager] fileExistsAtPath:destination]) [[NSFileManager defaultManager] removeItemAtPath:destination error:nil]; [self saveImage:screenshot toPDFFile:destination]; }
- Xib파일에서 View 읽어오기
UIView *myView =(UIView *)[[[NSBundle mainBundle] loadNibNamed:@"XIB파일이름" owner:self options:nil] objectAtIndex:0];
- Storyboard에서 특정 ViewController 읽어오기
myViewController = (MyViewController *)[self.storyboard instantiateViewControllerWithIdentifier:@"MyViewControllerID"]; //MyViewControllerID 스토리보드에 등록한 ID
- UIScrollView에 대한 간단한 정리.
자주사용하지 않아서 잘 잊어버리는 관계로, 간단하게 그림으로 정리합니다.
- 각도와 이동거리로, Point 위치 계산하기.
x좌표 = x + cosf(degree*M_PI/180) * deltay좌표 = y + sinf((degree-180)*M_PI/180) * delta ( y축이 아래로 증가하게 되므로 180도 이동시켜준다.)
댓글 없음:
댓글 쓰기