我需要能够选择日期和月份,并让用户选择年或不选择的选项。例如,我正在考虑一个包含所有年份的列表,并在最后添加一个选项“无选择”。
你知道怎么做吗?
我认为使用picker视图是一种解决方案,但不确定。
谢谢
发布于 2015-11-28 23:35:40
使用xamarin.ios,我所做的是在指轮顶部创建一个工具栏,其中有一个完成按钮和一个取消按钮。单击完成后,将设置该值,然后单击取消。您需要做的是将Datepicker值设置为类似1900-1-1的值,并将uitextfield值更改为类似于"Not set“的值。
我使用的是xamarin表单。这是我的自定义渲染器中的内容:
public override void Draw (CGRect rect)
{
base.Draw (rect);
DatePicker elem = (DatePicker)Element;
UITextField textField = (UITextField)Control;
var toolbar = new UIToolbar(new CGRect(0.0f, 0.0f, Control.Frame.Size.Width, 44.0f));
toolbar.Items = new[]
{
new UIBarButtonItem(UIBarButtonSystemItem.Cancel,(object sender, EventArgs e) => {
if (elem.SetValueNullAction!=null){
elem.SetValueNullAction();
textField.Text = DefaultNotSetText;
}
}),
new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace),
new UIBarButtonItem(UIBarButtonSystemItem.Done,(object sender, EventArgs e) => {
elem.Unfocus();
})
};
textField.InputAccessoryView = toolbar;
textField.BorderStyle = UITextBorderStyle.None;
textField.TextColor = Color.FromHex ("999999").ToUIColor ();
CGRect frame = textField.Frame;
frame.Width = 100;
textField.Frame = frame;
if (elem.Date == elem.MinimumDate) {
textField.Text = ((DatePicker)this.Element).Label;
}
}希望这能有所帮助!
发布于 2015-11-29 00:02:00
https://stackoverflow.com/questions/23652329
复制相似问题