1

我在正在构建的 MonoTouch 应用程序中创建了一个自定义 UITableViewCell。在我成功设置的单元格内:

Accessory = UITableViewCellAccessory.DisclosureIndicator;

但是,当我尝试更改 AccessoryView 的背景颜色时,我的应用程序崩溃了,因为 AccessoryView 为空:

AccessoryView.BackgroundColor = UIColor.White;

事实上,单元格内唯一不为空的视图是 ContentView。

任何人都知道为什么 AccessoryView 为空?

4

2 回答 2

3

AccessoryAccessoryView属性是相关的,但不会相互改变。

当您在其中设置自己的自定义视图时,AccessoryView的值Accessory将被忽略UITableViewCell

任何人都知道为什么 AccessoryView 为空?

同样,如果您设置 an那么您将Accessory无法访问股票视图(通过AccessoryView属性)和支持的事件,例如触摸事件DisclosureButton,将是单元格(因为您无法访问视图)。

如果您想要一个自定义外观的附件视图,那么您可以自己创建一个并将其分配给AccessoryView属性。

于 2012-07-25T01:22:22.393 回答
1

我最初的问题是我正在向单元格添加一个附件,但该附件的背景与单元格其余部分的背景不同。它正在获取底层表视图的背景,这不是我想要的。当我尝试将 AccessoryView.Background 颜色设置为我想要的(认为这是罪魁祸首)时,AccessoryView 为空。

我最终为解决我的问题所做的是创建一个具有我想要的背景颜色的新 UIView 并将其设置为我的单元格 BackgroundView (因为它最初也是 null )。这解决了我的问题,我的单元格到处都有正确的颜色。

于 2012-07-26T05:12:24.933 回答