라. 스타일 설정하기
광고목록 창은 SDK에서 제공하는 기본 스타일을 그대로 사용하셔도 무방하지만, 앱의 UI와 통일감 있도록 스타일을 정의할 수 있습니다.
Tnk SDK는 광고 목록 및 상세 화면의 색상이나 이미지 등을 변경할 수 있도록 다음과 같은 API를 제공합니다. 모든 API는 TnkSession의 sharedInstance를 호출하여 얻어진 객체를 사용해서 호출해야야 합니다.
(** 스타일 지정시 TableStyle은 UITableStylePlain으로 유지하시기 바랍니다.)
1) 광고 목록 스타일 설정
- (void) setTableViewStyle:(UITableViewStyle)style; // UITableViewStylePlain(기본값) 또는 UITableViewStyleGrouped로 설정
- (void) setHeaderColor:(UIColor *)color; // 상단 타이틀 영역(네비게이션 바)의 배경색상을 지정합니다.
- (void) setListItemBackgroundColorNormal:(UIColor *)color; // 리스트 항목의 배경 색상을 지정합니다. (Normal 상태의 배경)
- (void) setListItemBackgroundColorStripe:(UIColor *)color; // 리스트 항목의 배경 색상을 번갈아 다르게 하고자 할경우 지정합니다. (Normal 상태의 배경)
- (void) setListItemBackgroundColorHighlight:(UIColor *)color; // 리스트 항목이 눌렸을 때의 배경 색상을 지정합니다.
- (void) setFreeBoxButtonImage:(UIImage *)image; // 무료항목임을 표시하는 tag 이미지를 지정합니다.
- (void) setPaidBoxButtonImage:(UIImage *)image; // 유료항목임을 표시하는 tag 이미지를 지정합니다.
- (void) setConfirmBoxButtonImage:(UIImage *)image; // 설치확인 상태임을 표시하는 tag 이미지를 지정합니다.
- (void) setShowAdListFooter:(BOOL)yesno; // 광고리스트 하단의 Footer (버전 및 이용문의 버튼있는 영역)을 숨기거나 보이게 설정합니다.(기본값 :YES)
- (void) setHeaderHelpButtonImage:(UIImage *)image; // 이미지를 지정하면 해당 이미지를 이용한 이용문의 버튼이 광고리스트 상단 타이틀 영역의 오른쪽에 나타납니다.
2) 광고 상세 화면의 스타일 설정
- (void) setDetailBackgroundColor:(UIColor *)color; // 상세화면의 전체 바탕 색상을 지정
- (void) setDetailHeaderBackgroundColor:(UIColor *)color; // 상세화면의 상단 영역 부분의 배경 색상을 지정
- (void) setDetailButtonImageNormal:(UIImage *)image; // 상세화면 버튼 이미지를 지정 (Normal 상태)
- (void) setDetailButtonImageHighlight:(UIImage *)image; // 상세화면 버튼 눌렸을 때 이미지를 지정
- (void) setDetailButtonTextColor:(UIColor *)color; // 상세화면 버튼 텍스트 색상을 지정
3) 적용 예시
Sample Code
// set styles
[[TnkSession sharedInstance] setHeaderColor:TITLE_BAR_COLOR];
[[TnkSession sharedInstance] setHeaderTitle:LocalString(@"adlist")];
[[TnkSession sharedInstance] setDetailBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_detail.png"]]];
[[TnkSession sharedInstance] setListItemBackgroundColorNormal:[UIColor colorWithPatternImage:[UIImage imageNamed:@"adlist_bg_normal.png"]]];
[[TnkSession sharedInstance] setListItemBackgroundColorStripe:[UIColor colorWithPatternImage:[UIImage imageNamed:@"adlist_bg_stripe.png"]]];
[[TnkSession sharedInstance] setListItemBackgroundColorHighlight:[UIColor colorWithPatternImage:[UIImage imageNamed:@"adlist_bg_highlight.png"]]];
[[TnkSession sharedInstance] setDetailHeaderBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"detail_header_bg.png"]]];
[[TnkSession sharedInstance] setFreeBoxButtonImage:[UIImage imageNamed:@"az_list_bt_free.png"]];
[[TnkSession sharedInstance] setPaidBoxButtonImage:[UIImage imageNamed:@"az_list_bt_pay.png"]];
[[TnkSession sharedInstance] setConfirmBoxButtonImage:[UIImage imageNamed:@"az_list_bt_install.png"]];
UIImage *detailButtonNormal = [UIImage imageNamed:@"detail_bt_bg.png"];
UIImage *stretchableDetailButtonNormal = [detailButtonNormal stretchableImageWithLeftCapWidth:10 topCapHeight:0];
[[TnkSession sharedInstance] setDetailButtonImageNormal:stretchableDetailButtonNormal];