如何获取对特定本机视图的引用,而不是UIView? 这是我的自定义标签渲染器:
public class MyLabelRenderer : LabelRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Label> e)
{
//how to get UILabel reference created by base LabelRender?
base.OnElementChanged(e);
}
}
我以Renderer Sample为例。
答案 0 :(得分:1)
您使用的参考已过时。使用此http://forums.xamarin.com/discussion/comment/59303
如果您调用Control
,则可以通过SetNativeControl()
属性访问原生视图:
protected override void OnElementChanged (ElementChangedEventArgs<MyCustomView> e)
{
base.OnElementChanged (e);
if (e.OldElement == null) {
// perform initial setup
SetNativeControl (new UIMyCustomView (RectangleF.Empty));
}
UpdateSomething ();
}
答案 1 :(得分:0)
尝试使用e.OldElement
或e.NewElement
答案 2 :(得分:0)
您需要使用渲染器的Control属性。它理论上应该在OnElementChanged方法中可用。但是,在像UWP这样的平台上,自定义渲染器实际上就是原生控件。