2008-10-22 64 views
47

在我的筆尖文件中將UIWebView作爲最後一層放置的缺點,我如何將重複背景圖像添加到iPhone應用程序中(如在分組的UITableView背景中的燈芯絨外觀)?在本地iPhone應用程序中重複背景圖像

我是否需要創建一個與iPhone屏幕大小相同的圖像,並使用複製和粘貼手動重複該圖像?

回答

160

顯然,UIColor不一定是單一顏色,但也可以是一種圖案。令人困惑的是,這在Interface Builder中不受支持。

相反,您可以使用便捷方法+ colorWithPatternImage設置視圖的backgroundColor(例如,在-viewDidLoad中),並將其傳遞給UI圖像。對於實例:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"gingham.png"]]; 
} 

當然,不要忘記將圖像文件添加到您的應用程序包。

也有一些內置的背景圖案「顏色」:

  • groupTableViewBackgroundColor
  • viewFlipsideBackgroundColor

因爲跨所有iPhone應用程序在全球使用,它也導致了雙刃操作系統更新的劍更新你的應用程序的外觀和感覺(給它一個新的外觀,可能會或可能不會正常工作)。

例如:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    self.view.backgroundColor = [UIColor groupTableViewBackgroundColor]; 
} 
+1

哇,我不知道這件事。偉大的提示! – Lounges 2008-10-22 17:29:22

2

你應該看看蘋果的QuartzDemo iPhone示例代碼,具體QuartzImageDrawing.m。應該使用以下方法調用。

CGContextDrawTiledImage 
1

您應該使用colorWithPatternImage