【问题标题】:Select date in UIDatePicker from UITextField click event MonoTouch从 UITextField 单击事件 MonoTouch 在 UIDatePicker 中选择日期
【发布时间】:2012-08-08 05:34:19
【问题描述】:

首先,我有一个 TextField。当用户单击它时,DatePicker 将出现(在同一文本字段的视图中)。用户选择日期后,DatePicker 应消失,文本字段应显示所选日期。
我已经在 ViewDidLoad 中尝试过这段代码:

    txtTime.TouchDown += (sender, e) => {
    UIDatePicker picker = new UIDatePicker (new RectangleF (0, 20, this.View.Bounds.Width, 10));  
    picker.Date = DateTime.Now;
    picker.Mode = UIDatePickerMode.Time;
    this.Add(picker);
    txtTime.ResignFirstResponder();             
};

但我有一些问题:

  1. 无法禁用键盘(ResignFirstResponder() 不起作用)
  2. 我不知道如何处理选择日期甚至 DatePicker 为文本框设置
  3. DatePicker 出现时没有“关闭”或“完成”按钮,因此无法返回到文本字段视图(我可以使用没有操作表的 Datepicker 吗?)。

我该如何解决?

【问题讨论】:

    标签: objective-c ios mono xamarin.ios


    【解决方案1】:

    "Developing CSharp Apps for iPhone and iPad using MonoTouch - 2011" 一书的第 7 章“标准控制”中,您可以看到如何实施拣货日期的示例。

    基本思路是:

    • 将 DatePicker 放在 UIActionSheet 上(创建自定义类,实际控制 DatePicker 和 UIActionSheet);
    • 在 UIActionSheet 的视图顶部添加标签“选择日期,然后按确定”和按钮“确定”/“取消”;
    • 在 textField.EditingDidBegin 事件上显示 UIActionSheet。

    截图:

    对于俄语语言环境设置感到抱歉。

    【讨论】:

    • 感谢您的帮助,我大约 2 天前尝试过这种方式,并且成功了。
    【解决方案2】:
    this.txtTime.shouldreturn += (txtTime) => {
    txtTime.resignfirstresponder ();
    return true;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多