使用视图控制器类继承视图:新类是否会实例化基类的UI对象?

时间:2011-01-08 20:11:49

标签: c# iphone interface-builder xamarin.ios monodevelop

我有一个基本的View Controller类,其中包含一个视图和一些连接到MonoTouch应用程序中的插座的控件,它描述了一个自定义表格单元格。从这个类我继承了我所有的其他自定义单元格。这很舒服,但我不确定继承的类是否会实例化基础的视图和子视图(从而占用双内存)?

基地有一个UITableViewCell,有三个UILabel和两个按钮。它们连接到出口,因为我需要在基类中放置一些常用功能。

继承的类添加了相同的视图,但我需要手动添加它们。它们使用与基类中的插座相同的名称连接到插座。

如果继承的类确实实例化了基础的UI元素以及它自己的UI元素,那么我有办法修复它并只使用基础的UI元素吗?

感谢阅读。

1 个答案:

答案 0 :(得分:1)

我会尽力回答我的理解。让我们来看看。你有一个管理UITableViewCell的UIViewController。在IB中,您将单元格的一些控件连接到控制器。

通过手动添加相同的视图,我不明白你的意思。你为什么这样做?

如果从UIViewController继承以扩展基本表格单元格,它当然会包含基础的所有控件。

如果通过向现有的UIView添加一堆其他UIView来扩展表格单元格,则不会覆盖现有的UIView。

将IB中的视图视为对象的“序列化”版本。它们是真实的物体。这意味着如果你在IB中有一个按钮和一个标签,在从IB加载东西时,将执行“new UIButton()”和“new UILabel()”。

如果在继承类中不需要基本内容,请不要继承。

您是面向对象开发的新手吗?也许你应该首先了解继承,多态和基于面向对象的开发的基础知识 - 还是我完全误解了你的问题?