我刚刚开始使用Xamarin进行iOS开发,似乎已经遇到了障碍.我正在尝试创建一个自定义表格单元格来显示一些数据.因此,从各种在线资源中获取提示(例如,请参见此处),我创建了一个.xib文件,删除了Xamarin自动创建的视图并将其替换为UITableViewCell
.我在我的单元格中添加了一些标签,我注册了我的单元格RegisterNibForCellReuse
并设置了继承的类,UITableViewSource
以便在适当的时候返回我的自定义单元格.到现在为止还挺好.
当我在自定义单元格中使用任何控件并尝试创建插座时,问题就开始了.在XCode中创建插座,一切看起来都不错.回到Xamarin,我可以看到它为它自动创建了一个属性.
[Register ("MyCustomCell")]
partial class MyCustomCell
{
[Outlet]
MonoTouch.UIKit.UILabel MyLabel { get; set; }
void ReleaseDesignerOutlets ()
{
if (MyLabel != null) {
MyLabel.Dispose ();
MyLabel = null;
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行代码时,我得到一个运行时错误说 This class in not key value coding-compliant for key the key MyOutlet
知道可能会发生什么吗?Xamarin文档在这里提出了一个可能的原因,但我不确定它是否相关.我没有在Xamarin创建的任何设计器文件中看到类似的东西,并且它们一切都很好.我试图与使用一个替代上面的属性定义Connect
属性,而不是Outlet
和用途GetNativeField
及SetNativeField
,但我看到了同样的结果.
我有一段时间遇到这个问题在我的情况下,结果证明这是一个与构建过程有关的问题.以下为我修好了:
右键单击项目,在"Build"子标题下选择"Options",然后选择"iOS Build",将-f添加到"Additional mtouch arguments"并重建.
归档时间: |
|
查看次数: |
4443 次 |
最近记录: |