15

基本的に、ユーザーがテキスト フィールドをクリックすると、キーボードではなく、入力されたピッカービューが表示されます。これには、完了ボタンを備えたツールバーも必要になると思います。私は現在、フィールドを出力とアクションとして設定していますが、それ以上のものはありません。また、ユーザーが何かを送信するときに使用されるコード内のアクションシートも持っています。

このトピックを調査してみましたが、トピックの 99% はピッカービュー (または非常に古いコード) ではなく、日付ピッカーに関するものでした。

参考までにこんな感じの画像です。

4

1 に答える 1

38

UITextField現在、inputViewプロパティがあります。ここで、UIPickerView を含む必要なディスプレイを割り当てることができます。ただし、ピッカービューをセットアップする必要があり、.h にUITextFieldDelegateandを実装する必要があります。UIPickerViewDataSource

@interface ViewController : UIViewController <UIPickerViewDataSource, UIPickerViewDelegate>

次に、ピッカー ビューを作成し、それをテキスト フィールドに割り当てます。

UIPickerView *pickerView = [[UIPickerView alloc] init];
pickerView.dataSource = self;
pickerView.delegate = self;
// ... ...
self.pickerTextField.inputView = pickerView;

UIPickerView インターフェイスを実装したので、次のメソッドを実装する必要があります。

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;

これで準備完了です。詳細情報が必要な場合は、他の方法のドキュメントを確認してください。

于 2013-01-30T20:46:29.957 に答える