0x05 Programming
-
[iPhone 프로그래밍] iOS5 에서 tableView:viewForHeaderInSection: 구현시 주의할점 !0x05 Programming/iPhone Programing 2011. 7. 22. 01:37
iOS5 로 업데이트 되면서 개발자 문서를 살펴본결과 다음과 같은 말이 쓰여있었습니다. Returning nil from the tableView:viewForHeaderInSection: method (or its footer equivalent) is no longer sufficient to hide a header. You must override tableView:heightForHeaderInSection: and return 0.0 to hide a header. 위의 말을 해석해보자면 tableView:viewForHeaderInSection: 함수에서 섹션을 감추기위해 nil 을 반환하는 것을 금지시킨것 같습니다. 반드시 tableView:heightForHeaderInSection: 를..
-
[아이폰 사용팁] 카카오톡 스팸메시지 이렇게 대처합시다.0x05 Programming/iPhone Programing 2011. 6. 4. 00:43
최근 이러한 스팸메세지가 극성이라고합니다. 클릭을 하게되면 팝업창이 2천번 가량 뜨면서 여간 귀찮은 게아니죠 . 더군다나 아이폰을 사용하실줄 모르는 사용자분들 께서는 사파리를 사용할수 없게 되기때문에 아마 황당한 경험 해보셨을겁니다. 이를 해결하기위한 해결책을 올려봅니다. 제일 먼저 아이폰에 있는 [설정] 메뉴에 들어가셔서 "Safari" 를 클릭합니다. "Safari" 에 들어가셔서 "Javascript" 옵션을 끕니다. 그런후 현재 실행중인 사파리 앱을 종료합니다. 사파리앱을 다시 켜시고 주소창을 빠르게 클릭하여 다른 사이트로 이동합니다. 이러한 방법으로 2천번의 팝업창 가뿐하게 꺼줍시다. 해당 사이트를 빠져나오신 뒤에는 Javascript 사용을 다시 켜주시는것도 잊지마시구요 ^^ 더이상 스팸에 낚..
-
[iPhone 프로그래밍] 개발시 디버그용 매크로 설정법0x05 Programming/iPhone Programing 2011. 4. 22. 15:21
개발을 하다보면 각종변수들의 값을 확인하기위해 NSLog로 값을 확인해야할때가 있는데 이 로그를 디버그상태일때만 표시할수있는 방법은 다음과 같습니다. #ifdef DEBUG #define DBLog(xx, ...) NSLog(@"%s(%d): " xx, ((strrchr(__FILE__, '/') ? : __FILE__- 1) + 1), __LINE__, ##__VA_ARGS__) #else #define LPLog(xx, ...) ((void)0) #endif -Prefix.pch 파일에 넣어두신후 NSLog와 같이 사용하시면됩니다. :)
-
[iPhone 프로그래밍] UITableView에서 이미지 동적으로 불러오기0x05 Programming/iPhone Programing 2011. 1. 11. 10:59
아이폰 프로그래밍을 하다보면 UITableView에서 여러장의 이미지를 빠르게 로딩시켜야 하는 경우가 있습니다. 이경우에 그냥 UIImageView를 이용하여 로딩하다보면 셀이 버벅거리면서 앱이 죽어버리는 경우를 볼수가 있는데요 여러장의 이미지를 빠르게 비동기적으로 불러오기위해 만들어놓은 AsyncImageView라는 것이 있습니다. 제가 첨부해놓은 파일을 이용하시면됩니다. 사용법은 다음과 같습니다. #import "AsyncImageView.h" AsyncImageView *asyncImageView = nil; // 위치를 잡아줍니다. CGRect frame; frame.origin.x = 0; frame.origin.y = 0; frame.size.width = 60; frame.size.heigh..
-
[iPhone 프로그래밍] UINavigationController 알아보기 !0x05 Programming/iPhone Programing 2010. 12. 17. 16:28
UINavigationController를 사용할때 쓸만한 내용을 발견하여 정리해 봅니다. 1. 초기화 UINavigationController의 초기화를 위해서는 보통 가장 루트가 되는 뷰컨트롤러를 지정하게 됩니다. UIViewController *viewController = [[UIViewController alloc] init]; UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:viewController]; 2. 새로운 뷰로 이동하기/빠져 나오기 새로운뷰로 이동하는것은 다음과 이해하시면 좋을것 같습니다. 네비게이션컨트롤러는 기본적으로 스택(Stack)과 같은 구조로 동작..
-
[iPhone 프로그래밍] EXC_BAD_ACCESS 디버깅하기0x05 Programming/iPhone Programing 2010. 11. 30. 22:04
아이폰 개발을 하다보면, 디버깅 상태에서도 그냥 띡하니 EXC_BAD_ACCESS 한 마디만 툭 내뱉고 어플리케이션이 종료되어 버리거나 하는 경우를 종종 볼 수 있다. 윈도우에서 어플리케이션을 개발해왔던터라 윈도우에서 개발할때는 보통 개발툴이 이미 해제된 메모리 주소를 가진 포인터에 접근하거나 기타 오류 상황에서 상당부분 오류가 난 소스의 위치를 찝어주는데, Xcode에서는 떡하니 뭔가 나 죽어요...라고만하고 핑 종료되어버려서 당황스러웠다. 디버거 콘솔에 딱히 뭔가 참고할만한 정보도 별로 없이 죽는경우도 많다. 이런 경우 디버거 콘솔에 조금 더 자세한 정보를 출력하도록 할 수 있는데, 아래처럼 설정해주면 된다. Group & Files 의 Excutables에서 선택을 해주고, 메인툴바에 Info 버튼..
-
[iPhone 프로그래밍] UITableView DataSource 기본틀0x05 Programming/iPhone Programing 2010. 11. 16. 12:48
필요할때 쓰기위해 남겨둡니다. ㅎㅎ - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ return 1; } // Customize the number of rows in the table view. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 0; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"..