我有一些'n'個單元格的表格視圖。我的問題是單元格的背景圖片!使用背景顏色方法設置單元格的背景圖像不起作用
我已經知道的事實,UITableViewCell蘋果文件明確表示:
注意:如果你想改變一個單元格的背景顏色(由通過backgroundColor屬性設置單元格的背景顏色由UIView聲明),您必須在tableView:willDisplayCell:forRowAtIndexPath:委託的方法中執行此操作,而不是在數據源的tableView:cellForRowAtIndexPath:中執行此操作。
上面的描述還可以看出here
但我關心的不是改變細胞的顏色,而是它是因爲我們知道我們可以利用的cell.As設置背景圖片背景顏色屬性設置背景圖片,即:
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:kCellIdentifier] autorelease];
cell.backgroundColor = [[UIColor alloc]initWithPatternImage:[UIImage imageNamed:@"buttonbg.png"]];
}
但是使用的背景顏色爲背景圖片設置爲表視圖細胞不能正常工作 ,當我試圖改變形象,但沒有顏色,沒有按爲何上述方法/屬性在數據源方法中工作d(在索引路徑上行的單元格)
另外令我驚訝的是,我發現使用圖像視圖並將視圖設置爲單元格的背景視圖完美,並且由Mr.Ammy Worral在link中提出了相同的建議。即:
UIImage *cellImage = [UIImage imageNamed:kCellImage];
UIImageView *cellImageView = [[UIImageView alloc]initWithImage:cellImage];
[cell setBackgroundView:cellImageView];
但我的疑問是,爲什麼不與細胞的背景色方法的背景圖像的工作!
需要一些解釋!
感謝所有提前:)
感謝您的迴應,我明白了您的觀點,但即使在tableView:willDisplayCell:forRowAtIndexPath:方法中,UITableView也會進行修改na,那麼爲什麼在cellForRowAtIndexPath方法中沒有任何影響 – 2012-07-27 06:30:28
@EshwarChaitanya你試過這個嗎?它不工作嗎? – 2012-07-27 06:35:44
我不是在詢問子類化和你給Mr.H2CO3的解決方案,我正在談論你爲什麼背景顏色屬性在數據源方法中不起作用的原因!正如你所說的,tableView在細胞外觀上做了一些修改,類似的應用在委託方法也na即的tableView:willDisplayCell:forRowAtIndexPath:爲什麼在數據源的方法這裏,而不是做的顏色屬性的工作,我問一下,謝謝:) – 2012-07-27 06:48:01