我有一個自定義UITableViewCell
。這些有以下問題:用戶界面問題與定製UITableViewCell
- 刪除按鈕太右,重疊我的背景。我想設置一個插圖,以便它向左移動一點,然後看起來很棒。
藍色的高亮顯示狀態橫跨屏幕的整個寬度,我想它只是我的曲格背景的邊界內進行設置。
有沒有辦法來解決這兩個問題?謝謝。
編輯:我的代碼如下設置背景(只是一個自定義的方法):
- (UIImage *)cellBackgroundForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSInteger rowCount = [self tableView:[self tableView] numberOfRowsInSection:0];
NSInteger rowIndex = indexPath.row;
UIImage *background = nil;
if (rowIndex == 0) {
background = [UIImage imageNamed:@"cell_top.png"];
} else if (rowIndex == rowCount - 1) {
background = [UIImage imageNamed:@"cell_bottom.png"];
} else {
background = [UIImage imageNamed:@"cell_middle.png"];
}
return background;
}
我再打電話,只是得到的每一個細胞後更新它reloadTable
無效的方法在此方法中出現了行更新(添加或刪除行,因爲表中有3個不同的圖像)。我也在調用結果控制器從Core Data獲取所有項目並首次加載表格後調用此方法。
編輯2:這是reloadTable
方法的代碼:
- (void)refreshTable
{
for (NSInteger j = 0; j < [self.tableView numberOfSections]; ++j)
{
for (NSInteger i = 0; i < [self.tableView numberOfRowsInSection:j]; ++i)
{
UIImage *background = [self cellBackgroundForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:j]];
UIImageView *cellBackgroundView = [[UIImageView alloc] initWithImage:background];
cellBackgroundView.image = background;
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:j]];
cell.backgroundView = cellBackgroundView;
}
}
}
的問題是:我不知道如何設置邊距或一個的tableView的寬度或表視圖細胞。我需要繼承一些東西嗎?它通常如何完成?
我相信這些問題都與你的「定製的'UITableViewCell'」的界限有關。你可以發佈一些代碼給我們看嗎? –
@TheKraken我添加了一些代碼,希望它有幫助。 – swiftcode
正確的圖像被返回後,你是否將其設置爲「UITableViewCell」的視圖? –