如何将UITextField setInputView设置为UIPickerView - iphone OS:3.1.2

时间:2011-08-05 05:21:15

标签: iphone

我以编程方式创建了一个UITextField和UIPickerView,并设置了输入视图 文本字段到选择器视图,但当我将此测试应用程序上传到iPhone OS的iphone测试设备时:3.1.2它在[textfield setInputView:picker]执行时崩溃,但是如果上传到iphone测试设备上同样的测试应用程序工作正常使用iphone OS:4.1。请让我知道如何在iphone OS上运行它:3.1.2

由于

UIPickerView* picker = [[UIPickerView alloc] initWithFrame:CGRectMake(0.0f, 480.0f, 320.0f, 270.0f)];
picker.delegate = self;
[TestViewController addSubview:picker]; 

UITextField* textfield = [[UITextField alloc] initWithFrame:CGRectMake(145.0f, 97.0f, 155.0f, 29.0f)];
textfield.delegate = self;

[textfield setInputView:picker];    // Crashes on execution
[TestViewController addSubview:textfield];

1 个答案:

答案 0 :(得分:1)

setInputView 在iOS 3.2及更高版本中可用。

要在iOS 3.1.2中实现此目的,

  1. 将委托设置为UITextField
  2. 在委托方法textFieldDidBeginEditing代码中,如下所示,

    - (void)textFieldDidBeginEditing:(UITextField *)textField
    {
    [textField resignFirstResponder];
    [pickerView setHidden:NO];
    }