본문 바로가기

UILabel에 중앙선(취소선) 표시하기. (UIStrikeLabel) UILabel 에 Text 를 입력하고, 중앙선(취소선)을 표시하고 싶지 않으세요? ^^; UILabel 레퍼런스를 샅샅이 뒤져봤지만, Strike를 표시하는 속성이나 메소드가 없더라고요. 게다가, IB에서 폰트 설정에 Strike 를 설정하는 부분이 있지만, 적용이 되지 않고요.. 결국, 고민 끝에 UILabel 을 상속받은 새로운 클래스를 정의해서 구현하기로 했습니다. 뭐.. 그냥, Frame 사이즈에서 중앙선 위치를 구한 뒤에 라인을 하나 그어주면 되겠다 싶었죠. 헌데! 한 가지 생각지 못한 결과가 나오더라고요. 바로.. Frame 사이즈대로 중앙선의 With를 결정하니, UILabel 의 전체 사이즈. 즉, 입력 된 Text 부분을 제외한 나머지 여백에도 중앙선이 생기는 겁니다. 그래서, Font..
하나의 UIViewController 에서 두개 이상의 UITableView 를 표현하기 2010/07/29 - [iPhone Dev] - APXML 를 사용 해 보세요. 이전에 남겼던 포스팅을 보고 쪽지로 질문이 날라왔어요. 궁금하셨던 사항이 XML Parsing과 연관성이 있는 질문은 아니지만, 해결책이 간단한 Tip 이 될 수 있을 것 같아서 포스팅으로 남길께요. UITableView 에 Data 를 바인딩 하기 위해서는 UITableViewDataSource 프로토콜을 구현해야 합니다. 정확히는, row 수와 각 row 마다 바인딩 될 데이터를 지정 해 주는 numberOfRowsInSection, cellForRowAtIndexPath 두 메서드를 구현하면 됩니다. 헌데, 만약 UIViewController 내에서 UITableView 를 하나가 아닌 두 개 이상이고 각 UITabl..
APNS 를 위한 Device Token 알아내기 APNS(Apple Push Notification Service)를 하기 위해서, 어플을 설치한 각 디바이스에서 Device Token 을 알아야 하는데요. 이 Device Token 을 알 수 있는 방법은 다음과 같습니다. 1. 어플 사용자가 APS(Apple Push Service) 를 이용하겠다는 동의를 해야 한다. 2. 어플리케이션 delegate 에서 UIApplicationDelegate 내 함수 (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 을 구현한다. 바로 2번 항목에서 (NSData *)deviceToken 이라는 파라미터로 Device..
HTML Page 에서 아이폰 키보드 자판 선택 UIWebView 로 HTML Page 를 로드하면 Input 태그의 경우 터치시 키보드 자판이 나타납니다. 여기서, 태그내 어트리뷰트 추가하는 간단한 방법으로 아이폰 자판을 선택하실 수 있습니다. 키보드 자판 형태의 4종류 // Text // Telephone // URL // Email 참고로 위 기능은 HTML5 에서 지원되며, iOS 3.1 버전 이후에서 지원된다고 합니다 :)
IB에서 각 UIControlState 에서의 UIButton 의 이미지 설정 간단한 Tip 입니다. 1. 코드 UIButton 을 이미지로 대체 하시는 경우 UIControlState 각 상태별 이미지를 따로 셋팅하시려 할 때, [buttonObj setImage: forState:]; 위에서 처럼, 버튼 객체의 setImage 메소드를 실행하시면 됩니다. 메소드는 두개의 파라미터 UIImage 와 UIControlState 를 인자로 넘겨주면 됩니다. // 기본 상태에서의 Image 설정 [buttonObj setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal]; // 하이라이트 상태에서의 Image 설정 [buttonObj setImage:[UIImage imageNamed:@"image.png"] ..
APXML Sample Source 2010/07/29 - [iPhone Dev] - APXML 를 사용 해 보세요. 이전 포스팅에서 샘플을 올려드리기로 약속 했는데요.. 일단은, 소스만 올려 드리도록 하겠습니다. 급하게 만들어서 소스가 엉망이진 않을지 걱정이네요. 샘플 소스는 웹에서 XML을 요청해서 받고, 파싱하여 UITableView 에 표시, UITableViewCell 선택 시 상세 내용을 확인 하실 수 있게 간단히 구현 된 소스입니다 :)
APXML 를 사용 해 보세요. iPhone SDK 에서 제공하는 Xml Parsing 을 사용하다 보면..' 좀 더 편한 방법으로 파싱 할 수 있는 라이브러리를 만들어 볼까?' 싶은 생각이 듭니다. (이럴 때 많으시죠?) 그렇다고, 맘만 먹으면 뚝딱 해 내느냐.. 그건 개인 재량마다 차이가 있겠지만, 아무래도 쉬이 되는 일은 아니죠. 시간 투자를 해야 하니깐요 :) 이럴 때, 저는 OpenSource 를 찾아봅니다. SAX 방식인지, DOM 방식인지.. 고려할 사항이 많겠지만, 저는 사용하기 쉬운 쪽에 중점을 두고 찾아봤어요. 그 중에 아는 지인께서 소개 해 준 APXML 을 서치 해 봤는데요, 다른 Xml Parser 보다 사용하기가 정말 쉽더라고요. 특히, 닷넷 플랫폼에 익숙한 저한텐 더욱 더 사용하기 편했습니다. (참고로 인터넷..
Observer 를 만들어 보세요. #1 객체지향 언어를 사용하시는 많은 개발자분들은 좀 더 객체지향적인 코드를 원하곤 합니다. 여기서, 좀 더 객체지향적인 코드란 것은 객체지향이 추구하는 언어적인 특색을 잘 살리는 코드를 말하는 것이죠. 그래서, 많은 분들이 클래스 다운 클래스를 만드려고 하고, Design Pattern 등에 관심도 보이고 합니다. 또한, 객체의 생성과 소멸 등에 관해서도 관심을 갖게 되고요 :) 이번 포스팅에서는 Design Pattern 의 하나인 Observer Pattern과 Singleton Pattern을 포스팅 해 보려고 합니다. 그러나, 여기서 Observer Pattern과 Singleton Pattern을 사용하고 안하고의 유무에 따라서 코드가 좀 더 객체지향적이라고 할 수 있는 것은 아닙니다. 좀 더 크게..