iOS tableview의 sectionheader는 기본적으로 스크롤할 때 상위에 고정으로 잡혀있게 된다. sectionheader 까지 스크롤이 가능하게 할 수 있는 코드가 있다. 물론 tableview를 scriollview로 감싸는 방법도 있지만.. 다음 코드를 삽입하자. sectionheader까지 스크롤이 가능하다 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { CGFloat sectionHeaderHeight = mTableView.sectionHeaderHeight; if (scrollView.contentOffset.y=0) { scrollView.contentInset = UIEdgeInsetsMake(-scrollView.conte..
64bit에서 컴파일시 objc_msgsend error 아이폰5s는 64bit다. 이번에 xcode 5.1에서 64bit 기종에 대한 권고사항이 있다. 그 중에서 objc_msgSend를 사용하는 경우 기존에 쓰던 방식을 수정해 주어야 한다. 그렇지 않으면 crash objc_msgSend(m_target, m_selector, (NSMutableDictionary*)info, receive, data, index);를 사용하여 crash가 발생하였다 문제해결 소스 ((void(*)(id, SEL, id, id, id, id))objc_msgSend)(m_target, m_selector, (NSMutableDictionary*)info, receive, data,index); 변경하니 컴파일 완료 참..
iOS 7 UI Difference between Simulator and real Device Xcode 5.0에서 작업시 시뮬레이터와 실제 기기로 테스트시 UI가 다르게 나타나는 현상이 있다.네비게이션 컨트롤러를 썼을 때 20, 44 pixel씩 프레임이 맞지 않는 문제이다.시뮬레이터에 맞춰야 하는지.. 기기에 맞춰야 하는지 ㅠㅠ 3.5인치는 기기도 없고 ㅠㅠ 해결방법은 self.edgesForExtendedLayout = UIRectEdgeNone; 위 코드를 삽입하면 시뮬레이터와 실제 기기 UI가 같아진다.후.. 구글링은 키워드가 중요하다.. ㅠㅠ
detailView 20pixel bug 네비게이션 컨트롤러에서 자식뷰로 push하여 들어갔을 때 자식뷰 하단에 20픽셀 위로 올라가 있는 버그를 발견아..... 골때리네 이건 또 머여 1. CGRect fullFrame = [[UIScreen mainScreen] applicationFrame]; self.navigationController.view.frame = fullFrame;2. self.navigationController.wantsFullScreenLayout = YES; 3. [self.navigationController.view setFrame:self.view.bounds]; 4. self.navigationController.view.frame = CGRectMake(0, 0, 3..
UITableView selected background color 테이블뷰가 선택 되었을 때 백그라운드 색을 지정해 주는 코드입니다.일반적으로 퍼런색과 회색을 지정해 줄 수 있는데 다양한 색상으로 변경을 할 수 있습니다. static NSString *CellIdentifier = @"VODCusCell"; VODCusCell *cell = (VODCusCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { NSArray *arr = [[NSBundle mainBundle] loadNibNamed:@"VODCusCell" owner:self options:nil]; cell = [arr objectAt..
iOS6 특정뷰 회전 처리 방금 해결한 문제. 특정뷰에서만 모든 방향으로 회전이 지원되게 하는 방법이다.프로젝트는 이렇다 Xcode5.0Device Orientation - Potrait - Landscape Left - Landscape Right windows based 로 프로젝트 생성하여 AppDelegate에서 NavigationController 생성하여 루트뷰를 VODViewController 설정했다. setRootViewController로 하는것이 중요하다. addSubview로 했을시 회전 함수가 먹히지 않는다. UIViewController *centerViewController = [[VODViewController alloc] initWithNibName:@"VODViewCont..
iPhone emoji encoding encoding이모티콘 인코딩 NSData *data = [sendMent dataUsingEncoding:NSNonLossyASCIIStringEncoding]; NSString *goodValue = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; NSLog(@" goodValue %@ ", goodValue); decoding이모티콘 디코딩 const char *jsonString = [reply UTF8String]; NSData *jsonData = [NSData dataWithBytes:jsonString length:strlen(jsonString)]; NSString *goodM..
D-day 구하기 오늘부터 특정일까지 D-day 구하는 소스입니다. 간단해요. 한번 해보시면 느낌이 오실겁니다. NSDateFormatter *format1 = [[NSDateFormatter alloc] init]; [format1 setDateFormat:@"yyyyMMdd"]; NSDate *DateOfBirth=[format1 dateFromString:@"20131220"]; NSDate *currentTime = [NSDate date]; int to = [[format1 stringFromDate:currentTime] intValue]; int birth = [[format1 stringFromDate:DateOfBirth] intValue]; if (to > birth) { titleOf..
NSMutableArray Sort NSMutableArray를 특정 키값으로 sort하는 방법이다.아래 소스는 딕셔너리에 들어가 있는 키값 "dday" 로 sort한 것이다. NSMutableDictionary* newDrink = [[NSMutableDictionary alloc] init]; [newDrink setValue:f_surl forKey:@"url"]; [newDrink setValue:f_sname forKey:@"name"]; [newDrink setValue:f_simg forKey:@"img"]; [newDrink setValue:f_sbody forKey:@"body"]; [newDrink setValue:f_sfday forKey:@"fday"]; [newDrink setVa..
string 정규식 사용하여 html tag 삭제하기 string에 html tag가 포함되어 삭제하고 싶을 때 사용합니다.예를들면 , 와 같은 태그들을 찾아내 공백으로 치환합니다. -(NSString*)stringByStrippingHTML:(NSString*)stringHtml { NSRange r; while ((r = [stringHtml rangeOfString:@"&[^;]+;" options:NSRegularExpressionSearch]).location != NSNotFound) stringHtml = [stringHtml stringByReplacingCharactersInRange:r withString:@""]; NSRange r1; while ((r1 = [stringHtml ra..
데이터 인코딩 (데이타 인코딩이 UTF8 일때) NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; (데이타 인코딩이 EUC-KR 일때) NSString *string = [[NSString alloc] initWithData:data encoding:0x80000000 + kCFStringEncodingDOSKorean]; (데이타 인코딩이 ASCII 일때) NSString *string = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];[출처] xcode object casting 방법|작성자 헤파이스토스
앱스토어 리뷰 페이지 이동 게임관련 어플리케이션을 보면 "앱스토어에 리뷰를 남겨주시면 아이템을 준다"는 팝업창 구현 후 실제 아이템을 지급해 주는 기능을 자주 볼 수 있다. 사실 앱스토어에 실제로 리뷰를 남겼는가의 판단은 불가능하다. 정말 리뷰를 남긴 사용자들에게 아이템을 지급하기 위해서 리뷰작성 아이디를 특정 메일로 받고 확인 후 지급해야 하는 방식을 사용하기도 한다. 대부분의 아이템 지급은 팝업창을 띄운 후 확인을 눌렀을 때 바로 지급이 되는 경우이다. 리뷰페이지로 이동 했을 시 리뷰를 남긴것으로 간주하는 것이다. 리뷰페이지로 이동하는 기능을 구현해 보자. 간단하다. NSURL *url = [NSURL URLWithString:@"itms-apps://itunes.apple.com/WebObjects..
스레드 Thread [self performSelectorInBackground:@selector(getHtmlParserData) withObject:nil]; [NSThread detachNewThreadSelector:@selector(getHtmlParserData) toTarget:self withObject:nil]; [self performSelector:@selector(getHtmlParserData) withObject:nil afterDelay:0.3];
문자열 검색 (특정 문자 찾기) string 데이터에서 특정 문자열을 찾는 방법입니다. NSString *str = @"hi there"; NSRange strRange; strRange = [str rangeOfString:@"there"]; if (strRange.location != NSNotFound) {NSArray *myWords = [str componentsSeparatedByString:@"i"]; NSString *str1 = [myWords objectAtIndex:1];} str 변수로 선언된 NSString에서 "there" 라는 문자열이 있는지 확인하는 방법입니다.
modalviewcontroller 띄우기 modalviewcontoroller 띄우는 방법입니다.네비게이션 컨트롤러를 모달뷰로.. -(IBAction) saveList:(id)sender { listView = [[ListViewController alloc] initWithNibName:@"ListViewController" bundle:nil]; UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:listView]; [self presentModalViewController:navController animated:YES]; }