1

我有一个包含多个文本字段的表单。大多数这些文本字段在单击时会通过以预期方式显示键盘来产生标准行为。

但是,当单击其中一些文本字段时,我想通过显示以下任一方式来覆盖标准行为:

1) A datepicker, or
2) A Combobox

问题 1:

如何覆盖标准行为并显示日期选择器/组合框而不是默认键盘?

问题2:

我目前的情况是,屏幕上可能同时显示键盘和日期选择器/组合框(键盘位于日期选择器/组合框之上,反之亦然)。如何防止这种情况发生,因为在任何给定时间都应该只显示一个或另一个(默认键盘或日期选择器/组合框)。

PS 我在这个网站上查看了其他类似的问题,但他们似乎没有回答我的问题。

任何意见/建议表示赞赏...

4

3 回答 3

0

Implement textfiled delegates and in the delegate method

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField  
{  
   //Check the textfield for which you want to display date picker
    if(textField == datePickerTextField)
    {
       [self showDatePicker];
       return NO; //to disallow editing i.e it will not open keyboard
    }
}
于 2012-05-16T09:24:42.573 回答
0

这可以通过技巧来实现。要隐藏显示键盘,请在文本字段中设置此属性。

enabled:false

并使用文本字段单击事件来显示日期选择器。

于 2012-05-16T13:21:07.430 回答
0

首先,您需要创建文本字段。然后它的编辑事件模糊该文本字段并打开您的日期选择器或组合框。这就是在 Titanium 中隐藏键盘和显示日期选择器的方法。

于 2012-05-16T10:48:09.147 回答