본문 바로가기

IOS

UINavigationBar 그림자 지우기 [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault]; [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]]; 더보기
UITableView Cell Moving Control 보통 아래의 코드로 UITableView의 이동이 가능하도록 만들었다. 그렇지만 특정 Index에 접근을 할 수 없게는 만들수가 없다. - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { if (indexPath.row >= [dataList count]) return NO; return YES; } 아래의 메소드를 활용하면 특정 index로 순서가 바뀌지 않도록 방지할 수 있다. - (NSIndexPath *)tableView:(UITableView *)tableView targetIndexPathForMoveFromRowAtIndexPath:(NSIndexPath *)sourceIndexP.. 더보기
UIPasteBoard 사용방법 기본적으로 UIPasteboard 어플리케이션에서 공유해서 사용이 가능하다. 몇가지 사용방법을 소개하자면.. UIPasteboard *appPasteBoard = [UIPasteboard generalPasteboard]; appPasteBoard.persistent = YES; [appPasteBoard setString:@"STRING TO COPY"]; UIPasteboard *appPasteBoard = [UIPasteboard generalPasteboard]; yourTextField.text = [appPasteBoard string]; UIPasteboard *appPasteBoard = [UIPasteboard pasteboardWithName:@"CopyPaste" create:YES].. 더보기
LLDB Quick Start Guide LLDB Quick Guide이다.~! po 명령어 하나면... 쉽게 디버깅이 가능하고 조금더 고급 명령어를 알고 싶다면 여기로 이동하자 더보기
iOS Touch ID Login iOS에서 Touch ID 하는 코드이다 사용하기 간단하다.~! NSString *loginDialogMessage = @"TouchID Login"; LAContext *context = [[LAContext alloc] init]; NSError *authError = nil; if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&authError]) { [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:loginDialogMessage reply:^(BOOL success, NSError *er.. 더보기
ARC란.... 이번에 면접을 보게 되면서 ARC에 대해서 물어봤는데 단순히 Compiler가 retain / release를 대신 작성해주는 것으로 알고 있었다. 그렇지만 면접관은 조금 더 내용을 알았으면 하는 뉘앙스가 있어서 다시 한번 알아보기로 하였다. 공식 홈페이지에서 살펴보니 기본적인 설명은 컴파일 타임시 retain / release 자동으로 추가해준다고 한다.그리고 retain, release, autorelease 사용할 필요가 없으며 Property는 기본설정은 Strong이라고 한다. 그리고 ARC가 적용이 되면서 새로운 룰이 생겼다. 하나하나 번역하기는.. 본인의 영어실력도 좋지 않고 귀찮아서.. 그대로 올리면.. You cannot explicitly invoke dealloc, or impleme.. 더보기
'__curl_rule_01__' declared as an array with a negative size 위의 에러에 대한 해결방법은 아래와 같이 고치면 된다. /* The size of `long', as computed by sizeof. */ #ifdef __LP64__ #define CURL_SIZEOF_LONG 8 #else #define CURL_SIZEOF_LONG 4 #endif 더보기
error: unknown register name 'q0' in asm : "memory", "q0", "q1", "q2", "q3", "q8", "q9", "q10", "q11", "q12", "q13", "q14", "q15" //clobber ^ libs/kazmath/src/neon_matrix_impl.c:93:15: error: unknown register name 'q0' in asm : "memory", "q0", "q1", "q8.. Architectures를 Standard architectures로 바꾸면서 아래와 같은 에러가 발생하였다. error: unknown register name 'q0' in asm : "memory", "q0", "q1", "q2", "q3", "q8", "q9", "q10", "q11", "q12", "q13", "q14", "q15" //clobber ^ libs/kazmath/src/neon_matrix_impl.c:93:15: error: unknown register name 'q0' in asm : "memory", "q0", "q1", "q8", "q9", "q10", "q11" //clobber ^ 2 errors generated. 해결방법은 간단하다. I had to replace .. 더보기
is deprecated: first deprecated in iOS 7.0 Deprecate 된 함수에 대한 처리를 했음에도 불구하고 Warnning이 뜨는 경우가 많다. 아래와 같은 스타일로 코딩을 한 경우.. if ([test respondsToSelector:@selector(~~~~~~)]) { } else { }//end if 그렇다고 Xcode 자체에서 Warnning을 Off 하는 건 불안하고.. 가만히 두고 있으려고 하니 마음이 편하지 못하다..그럴 때는 아래와 같은 방법을 사용해 보자! 아래와 같이 정의를 하고...#define SILENCE_DEPRECATION(expr) \ do { \ _Pragma("clang diagnostic push") \ _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\.. 더보기
[iOS] Status Bar를 눌러도 Scroll이 Top으로 이동하지 않을때... 기본적으로 UIScrollView의 scrollsToTop 속성이 YES로 설정이 되어 있다. 그래서 ScrollView와 TableView 등등 여러가지로 사용하는 있는 곳에서는 scrollsToTop 속성을 가진 UI가 많아서 동작을 하지 않는 것이다. 이럴 때는 하나만 YES로 설정하도록 해줘야 한다. 더보기