2011-12-23 3 views
0

私は10個のセルを含むテーブルビューを持ち、各セルにはテキストフィールドがあります。テキストフィールド5まで、ユーザーがキーボードを使用して値を入力するようにします。テキストフィールド6では、リストから値を選択する(ピッカービューを表示する)ようにします。 フィールド5(キーボードを表示)をクリックし、値を入力してから戻るボタン(キーボード)を押すと、キーボードがダウンし、次にテキストフィールド6(ピッカーを表示)をクリックすると、ピッカーはここにキーボードは表示されません。UITextFieldをクリックすると、ピッカーが表示されますが、kwyboardは消えません。

しかし、フィールド5のキーボードの戻りボタンを押してフィールド6(ピッカー)を直接クリックしないと、ピッカーがキーボードの上部に表示されます。キーボードの後ろに表示されます。ここで、キーボードのリターンをクリックすると、キーボードもダウンしません。キーボードを下に移動するには、テキストフィールド(キーボードを表示)をクリックしてからReturnキーを押す必要があります。

誰もこの奇妙な問題に直面しましたか?私を助けてください。あなたは、各テキストフィールドのタグを設定し、デリゲートを設定し、このように、このデリゲートメソッドを配置する必要があり

+1

ピッカーをどのように表示しますか? – Vladimir

+0

私のテキストフィールドのdidBeginEditingのデリゲートメソッドでは、私はピッカーを示すために、このコードを書いています: を(textField.tag == kStateTag)であれば{ \t \t \t [テキストフィールドresignFirstResponder]。 \t \t \t UIPickerView * stateListPicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0,160,320,216)]; \t \t \t stateListPicker.tag = kStateListPickerTag; \t \t \t stateListPicker.delegate = self; \t \t \t stateListPicker.showsSelectionIndicator = YES; \t \t \t [self.view addSubview:stateListPicker]; \t \t \t [stateListPicker release]; \t \t – anshul

+0

このメソッドでUIPickerViewのalloc initを実行していて、そのピッカーをビューに追加しています.... – anshul

答えて

1

  • (BOOL)textFieldShouldBeginEditing:(UITextFieldの*)テキストフィールド

    {

    YES(textField.tagの== 6)

    { 
        [textField resignFirstResponder]; 
    } 
    

    戻った場合。 }

お楽しみください!

+0

Hey Hardik、このメソッドはBOOLを返す必要があります。それはすべきではない? – anshul

+0

はい。 returnをYESにします。 –

1

ピッカーを手動でサブビューとして追加しないでください。テキストフィールドのinputViewcellForRowAtIndexPath)に設定すると、OSがあなたのために表示され、隠れるようになります。

+0

jrturton、私はUITableViewCellのcontentViewにテキストフィールドを追加しました。つまり、追加したテキストフィールドはすべてローカルです。各行にinitを割り当て、セルに追加した後に割り当てます。contentView、私はそれらをリリースしました。私はそれぞれのテキストフィールドにタグを使用し、このコードを私のviewDidLoadメソッドに追加しました: [((UITextField *)[tblTransferDetails.viewWithTag:kStateTag])setInputView:stateListPicker]; が動作していません。 : – anshul

+0

それはテーブル内にあることに気づいていませんでした。その場合は、cellForRowAtIndexPathで行います。インスタンス変数としてピッカービューを保持している場合は、一度作成するだけです。 (セルが再利用されている場合) – jrturton

+0

ちょっとjrturton、それは男でしたが、今問題は、テキストフィールドは私がそれに書き込むことができます(しかし、キーボードは表示されません)。このテキストフィールド内の何か。ピッカー内のアイテムを選択し、ピッカービューの外側をクリックするとピッカーが消え、選択したアイテムがテキストフィールドに表示されます。 – anshul

関連する問題