2012-07-24 43 views
1

我创建了一个自定义的UITableViewCell在MonoTouch的应用程序我建立。在细胞内,我成功地设置:MonoTouch的自定义的UITableViewCell accessoryView的是空

Accessory = UITableViewCellAccessory.DisclosureIndicator; 

然而,当我试图改变accessoryView的背景颜色我的应用程序崩溃,因为accessoryView的为空:

AccessoryView.BackgroundColor = UIColor.White; 

事实上的唯一视图的问题ContentView中不是null的单元格内。

任何人有一个想法,为什么accessoryView的是空?

回答

3

AccessoryAccessoryView属性是相关的,但不改变对方。

当你设置自己的定制鉴于AccessoryViewAccessory值将被忽略的UITableViewCell

任何人都有一个想法,为什么AccessoryView是空的?

同样,如果你设置了Accessory那么支持,当你没有得到访问股票视图(直通的AccessoryView属性)和事件,例如触摸事件DisclosureButton,将成为单元格(因为您无法访问该视图)。

如果你想定制寻找附属视图,那么你可以自己创建一个,并将其分配给AccessoryView财产。

+0

感谢您的回答。我不想要一个自定义的配件。我的问题是,配件背景颜色不是我想要的,我期望它是。我的单元格有一个ContentView,我将它的背景颜色设置为白色。我认为我可以对AccessoryView做同样的事情。我认为,因为我可以更改内容视图颜色,所以我应该可以对单元格上的所有视图执行相同的操作。无论如何,我用不同的方式解决了我的问题。请阅读我的答案。再次感谢。 – Apollonas 2012-07-26 05:15:44

1

我原来的问题是,我加入了一个配件的电池,但该附件的背景不会是一样的细胞的其余部分的背景。它正在获取底层表视图的背景,这不是我想要的。当我试图将AccessoryView.Background颜色设置为我想要的(认为这是罪魁祸首)时,AccessoryView为null。

我最终什么事做来解决我的问题是创建具有背景色,我想和设置新的UIView,作为我的细胞BackgroundView(因为这也是最初为null)。这解决了我的问题,我的手机在任何地方都有适当的颜色。