我使用MonoTouch.Dialog开发带有自定义元素的应用程序。我有好几个星期没有更新源代码了。昨天我做了这件事,并意识到不再调用IElementSizing的GetHeight。我甚至为根使用了新的标志:UnevenRows,但它没有帮助。我做了一个简单的测试,它似乎甚至对MessageElement这样的标准元素也不起作用,下面的代码显示了标准高度为44f的单元格,即使MessageElement实现了GetHeight并返回78f。是bug还是我做错了什么?
var root = new RootElement ("Test"){
new Section ("Text View"){
new MessageElement {Sender="Sender", Body="Body", Subject="Subject", Caption="Caption"}
}
};
root.UnevenRows = true;
var form = new DialogViewController (root, true);
我遇到了同样的问题,通过打开关闭pList编辑器,问题神奇地得到了解决。
https://bugzilla.xamarin.com/show_bug.cgi?id=7861
我也有同样的问题,但幸运的是,我找到了解决方法。
在设置Root.UnevenRows=true后调用ReloadData();
this.Root.UnevenRows = true;
this.ReloadData ();