使用 XIB 创建自定义 UIView

Posted

技术标签:

【中文标题】使用 XIB 创建自定义 UIView【英文标题】:Create Custom UIView with XIB 【发布时间】:2012-05-30 19:08:08 【问题描述】:

我正在尝试创建一个自定义 UIView 控件(UIView 的基类),它在 Monotouch 中具有 XIB 和插座,然后能够从代码中使用此控件并在 XCode 中使用它。我正在为类上的不同构造函数以及如何连接它们而苦苦挣扎?在 XCode 中,当我添加它时,我将类更改为自定义视图的类,但运行时没有显示任何内容。

每当我创建自定义视图并在 XCode 或代码中使用时,视图中似乎都没有显示任何内容。我可以更改自定义视图的背景,并且可以看到自定义视图在屏幕上,但我添加到其中的 UI 视图元素都没有显示。只是想知道是否有任何例子可以做到这一点?

谢谢

【问题讨论】:

【参考方案1】:

我在理解问题的某些部分时遇到了一些困难,而且我自己仍在为 MonoTouch 学习曲线,但我会试一试。如果我错过了标记,我会提前道歉。

首先,我认为你想要的是使用 UIViewController 作为基类,而不是 UIView。通过查看 MonoDevelop 在其通用视图控制器模板中使用的代码,我学到了很多东西。在左侧列表(解决方案下方)中右键单击您的项目名称,选择 Add > New File,然后选择 Universal View Controller,如下所示...

这将创建一个运行良好的视图控制器,并且很容易遵循其源代码。

另一件事:我可能是在说显而易见的,但在切换回 MonoDevelop 之前,请务必在 Interface Builder 中保存对 XIB 的任何更改。

【讨论】:

以上是关于使用 XIB 创建自定义 UIView的主要内容,如果未能解决你的问题,请参考以下文章

Xib 自定义 UIView 的实例化

在自包含的自定义 UIView 子类中使用 .xib 文件进行原型设计

使用来自 XIB 的自定义 NSView/UIView 子类?

将 xib 中的子视图添加到自定义 UIView

UIView:从自定义 XIB 加载导致崩溃

为UIView自定义Xib