如何将自定义的UIViewController添加到现有的XIB?
我只是用MonoTouch弄湿了自己的脚,并且有最基本的问题。在他们的教程中,他们讲述了通过XCode的Interface Builder直接向XIB添加控件。但是,我无法弄清楚如何将自定义控件添加到XIB。如何将自定义的UIViewController添加到现有的XIB?
我已经看到了许多子类化基本UICollectionView的例子,以便为您自己的目的进行自定义,并且已经在我的项目中的C#代码中完成了这些。我的问题是,如何将UICollectionView的特定子类添加到XIB以用于该项目?
对于一个正常的UIView,你需要去的基本步骤是:
-
C#创建自定义视图类
public class MyView { }
-
UIView的基类添加到它,添加一个Register属性并添加两个构造函数:
[Register("MyView")] public class MyView : UIView { public MyView() {} public MyView(IntPtr handle) : base(handle) {} }
-
为了使它做一些有用的东西,然后添加一个抽奖实现:
public override Draw(RectangleF rect) { var context = UIGraphics.CurrentGraphics(); UIColor.Red.SetFill(); context.FillEclipseInRect(rect); }
保存并生成项目
现在在XIB编辑器中,你想用你的自定义视图中的UIViewController,添加一个UIView到设计图面
选择的UIView和身份检查,设置了UIView的“自定义类”到“MyView的”
保存一切都在Xcode
回到MonoDevelop中,构建和运行
有这种流可用的视频在: - http://www.youtube.com/watch?v=ggwO46dd-50&feature=youtube_gdata
对于自定义UICollectionView,的UILabel,UITableViewCell的,或者任何其他的UIView基础类,那么你可以采用类似的步骤,只需使用不同的基类和不同的构造函数就可以支持特定的视图。
对于有关自定义表单元格的视频,请参阅:http://slodge.blogspot.co.uk/2013/01/uitableviewcell-using-xib-editor.html
我把它的意见,因为我不记得正确的标签,但在侧视片(其中包含关于大小的信息以及特定于该控件的信息)有一个选项卡说明视图控件是什么类,您可以将其更改为您的子类。 – CBredlow
因此,我添加一个普通的UICollectionView到屏幕上,然后将属性更改为引用在我的项目中定义的MyUICollectionView?也许Identity Inspector上的“Custom Class”属性? –