2011-04-20 65 views
2

如果我在我的UITableViewCell子類的init方法中爲我的表格單元格創建了一個背景圖像,則圖像完全是如何繪製的,並且tableView:heightForRowAtIndexPath:只是在它周圍增加了一個間隙。如何阻止我的自定義UITableViewCell backgroundImage被拉伸?

但是,如果我在我的tableView的tableView:cellForRowAtIndexPath:方法中創建背景圖像並設置它,那麼更改單元格高度將會延長圖像。

我需要在cellForRowAtIndexPath方法中創建背景視圖,因爲不同行的背景會發生變化。我怎樣才能讓我的圖像的大小再次固定?

回答

5

您是否嘗試過將contentMode設置爲UIViewContentModeCenter作爲單元格的backgroundView?

把它放在這裏

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { 
    cell.backgroundView.contentMode = UIViewContentModeCenter; 
} 
+0

沒什麼區別,我害怕。 – 2011-04-20 12:12:04

+0

我檢查我的編輯答案練習和它的工作,你會得到編輯答案的通知? – tsakoyan 2011-04-20 12:50:51

+0

對不起 - 只是看到它。似乎沒有任何通知編輯的答案。 – 2011-04-20 16:19:32

0

您可以創建的東西:

我的猜測是backgroundView就會自動strechted,但你可以確保圖像不拉伸上設置一個寬度和高度視圖。這樣,你可以用這種觀點做任何你喜歡的事情。

+0

我給這是一個嘗試,但它似乎並沒有做任何事情:( – 2011-04-20 12:12:26