在我的Xamarin.iOS应用程序中,有许多按钮具有相同的方案,但与标准的UIButton不同。我为按钮创建了一个类,因为大多数功能都相同,但是例如textcolor或backgroundcolor是不同的。
那么如何才能在故事板中添加关于任何按钮的额外信息? 我怎样才能在代码中对它做出反应?
答案 0 :(得分:3)
您可以使用DesignTimeVisible
和Register
属性
[Register ("CustomButton"), DesignTimeVisible (true)]
public class CustomButton: UIButton {
[Export ("CustomProperty "), Browsable (true)]
public int CustomProperty {get; set;}
public CustomButton(IntPtr handle) : base (handle) { }
public CustomButton()
{
// Called when created from code.
Initialize ();
}
public override void AwakeFromNib ()
{
// Called when loaded from xib or storyboard.
Initialize ();
}
void Initialize ()
{
// Common initialization code here.
CustomProperty = 0xB00B5;
}
}
对于您要在Designer中设置的所有属性,您只需要添加Export
和Browsable (true)
。在Initialize
中,您可以设置公共属性的所有值。
它将显示在Custom Components
下的工具箱中。您可能需要重建。
可以在Properties
窗格
更多信息:https://developer.xamarin.com/guides/ios/user_interface/designer/ios_designable_controls_overview/