我可能会为这个问题投票,但我很好奇,无法找到任何解释。所以我要在这里发布。
我的问题是,我必须在自定义单元格中显示自定义分隔符图像。如果我只设置CREATE TABLE
的背景颜色,而不是设置CREATE TABLE `try`.`testing` (
`id` INT NOT NULL AUTO_INCREMENT,
`date` DATE NOT NULL ,
`text_1` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`text_2` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
PRIMARY KEY (`id`) -- as primary key
KEY (`id`) -- or as key
) ENGINE = MyISAM;
,那么它是更好的方法吗?
以下是解释我的问题的示例屏幕截图。
在此屏幕截图中,我有黑色和灰色分隔符。
imageView
OR
UIImage
现在,哪一个更好?我只知道[barImage setBackgroundColor:[UIColor blackColor]];
[greyBarImage setBackgroundColor:[UIColor greyColor]];
有点慢,我们应该避免,但我不确定。
修改
这是我在发布此问题后所知道的:
设置图片:
[barImage setImage:[UIImage imageNamed:@"black.png"]];
[greyBarImage setImage:[UIImage imageNamed:@"grey.png"]];
上可能会有不透明的部分设置背景颜色:
imageNamed:
,因此整个UIImageView
将是不透明的,并会响应触摸。 答案 0 :(得分:6)
如果两个解决方案都适合您,设置背景颜色将优于设置图像
[barImage setBackgroundColor:[UIColor blackColor]];
[greyBarImage setBackgroundColor:[UIColor greyColor]];
因为这将
1.保存您的应用资源(图片)。
2.避免运行时图像加载问题(在重命名替换的情况下)。
答案 1 :(得分:1)
更改背景颜色会更好,因为: -
答案 2 :(得分:1)
最终用户可以看到的一个具体更改是,如果可以选择/突出显示单元格,如果使用背景颜色,则分隔符视图在选中时将丢失其背景。
如果您使用的是图片,则视图会保持相同的外观和感觉。
如果您关心这一点,请转到图片,如果没有,请选择背景颜色,更容易理解,调整,它可能会占用更少的资源(取决于您的图像)。
答案 3 :(得分:0)
要在tableview单元格上设置自定义分隔符颜色,您只需指定所需的分隔符颜色
即可[tableView setSeparatorColor:[UIColor grayColor]];
如果您想要显示替代颜色,请在
中添加以上语句- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
方法并使用indexPath
参数区分。