DirTy™의 하루일과/DirTy™의 가당찮은iOS 35

[IOS] 초보자도 할수있는 block코딩 기법.

아이폰 프로그래밍을 접한지도 꽤 시간이 지났다.계속 혼자서 하다보니 아무래도 막코딩이라 나조차 알아보기 어려울 정도로 뒤죽박죽인 경우가 많았다. 또 모르는게 많다보니 화면단에서 데이터를 넘긴다던가 클래스로 만들어놓은 오브젝트에서 다른 클래스로 뭔가 통지하거나 데이터를 날린다거나 하는것에 대해 대단히 무지해서 NSNotification만으로 코딩을 하고있었다. 기회가 되어 nhn next에서 4일동안 강의를 들었는데 여기서 강사님이 초보자도 쉽게 할수 있는 block코딩 기법을 알려주셔서 현재 대단히 유용하게 사용하고있다. 강사님왈... block은 그상태를 스냅샷 한 상태라고 생각하시면 됩니다. 라고했다.근데 진짜 이말이 맞다. block을 걸어놓은 상태에서 block이 실행되면 그상태로 돌아가는... ..

[IOS] background, foreground 타이머돌리기.

아무생각없이 코딩을 하고있다가 문득 백그라운드에서 포어그라운드로 넘어올때 한참의 시간이 지나도 화면이 갱신되지 않는 현상을 발견했다. 안드로이드에서는 기본적으로 제공되고 있는것 같아 아무생각 없이 지나쳤는데 아이폰 쪽에서는 처리해주는 AppDelegate에 메서드가 구현되어있었다. - (void)applicationDidEnterBackground:(UIApplication *)application // 백그라운드 진입시 호출- (void)applicaitonWillEnterForeground:(UIApplication *)application // 포어그라운드 진입시 호출 앱이 백그라운드 상태에서 포어그라운드로 넘어올때 첫화면부터 시작하고싶어 구글링해보니plist에 Application does not..

[IOS] ios8 apns대응

오늘 iOS8로 업데이트 되었다.테스트기기에서 돌려보니 푸시메시지가 안들어온다. 구글링하니 아래와같이 대응해줘야 한단다. 일단 AppDelegate.h에 iOS8 인지 아닌지 define을 걸어놓자!#define IS_iOS_8 [[[UIDevice currentDevice] systemVersion] floatValue] >= 8 그리고 AppDelegate.m의 첫 시작점인- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 에다가 아래와 같은 코드를 추가하자. if (IS_iOS_8) { // ios8 푸시~ [[UIApplication sharedApplic..

[IOS] 아이폰 사이즈 가져오기

회사에서 어쩔수 없이 맞게된 ios 앱 개발... 아이폰도 이젠 화면 사이즈가 하나가 아니라서... 화면 사이즈를 알아와야 하는법이 궁금했다... 예제코드는 아래와같다. if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { UIStoryboard *storyBard_; CGSize resut_size = [[UIScreen mainScreen] bounds].size; CGFloat scale = [UIScreen mainScreen].scale; resut_size = CGSizeMake(resut_size.width*scale, resut_size.height*scale); if(resut_size.height == 1136) { NSLog(@"..