1
如何定製UITableViews和iOS應用的整體UX以使用自定義顏色和紋理,如Foodish?如何在iOS用戶界面中使用自定義顏色和紋理?
如何定製UITableViews和iOS應用的整體UX以使用自定義顏色和紋理,如Foodish?如何在iOS用戶界面中使用自定義顏色和紋理?
這是一個非常開放的問題。他們正在做很多不同的事情。我會解決其中的一些問題。
自定義工具欄
他們正在創造它使用的圖像作爲背景圖案自定義工具欄擴展。要做到這一點,就UINavigationBar的
@implementation UINavigationBar(CustomBackground)
+ (UIImage *) bgImagePortrait {
static UIImage *image = nil;
if (image == nil) {
image = [[UIImage imageNamed:@"top_bar_portrait"] retain];
NSAssert(image, @"Image specified must be valid.");
}
return image;
}
+ (UIImage *) bgImageLandscape {
static UIImage *image = nil;
if (image == nil) {
image = [[UIImage imageNamed:@"top_bar_landscape"] retain];
NSAssert(image, @"Image specified must be valid.");
}
return image;
}
- (void) drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx {
if ([self isMemberOfClass:[UINavigationBar class]] == NO) {
return;
}
UIImage *image = (self.frame.size.width > 320) ?
[UINavigationBar bgImageLandscape] : [UINavigationBar bgImagePortrait];
CGContextClip(ctx);
CGContextTranslateCTM(ctx, 0, image.size.height);
CGContextScaleCTM(ctx, 1.0, -1.0);
CGContextDrawImage(ctx, CGRectMake(0, 0, self.frame.size.width,
self.frame.size.height), image.CGImage);
}
自定義工具欄按鈕
在工具欄的按鈕只是對他們的圖片自定義按鈕創建一個類別。您可以使用initWithCustomView
構造函數創建一個自定義UIBarButtonItem
:
[[UIBarButtonItem alloc] initWithCustomView:container]
尋呼滾動型
我不知道他們用的是表視圖的。它看起來像一個分頁滾動視圖的自定義佈局給我。看起來像創建一個方法需要相當簡單,該方法需要一系列圖像並以交錯的佈局將它們放在滾動頁面上。