2012-01-13 17 views
2

ユーザーがリストからオプションを選択できるようにする方法が必要です。私はUIAlertViewUIPickerViewを使用することを考えています。しかし、私は思っていた:それは(?それはリンゴ&でひんしゅくを買うされている場合、アプリが拒否さになります)iOS 5で簡単にUIAlertViewUIPickerViewを置くことが可能ですiOS 5:UIPickerViewでUIAlertViewを作成するにはどうすればよいですか? (iPhone/iPad)

  1. の良い方法はありますこれをする? (もしそうなら、何?)

本当にありがとう!

+1

これは可能ですが、奇妙に見えると思います。人々がUIAlertViewsにテキストフィールドを追加する方法を見て、ピッカービューでも同様のことができるかどうかを確認してください。 –

+0

なぜUIPickerViewとUITextFieldを別のページに追加しないのですか? – Saurabh

答えて

5

画面上のテキストフィールドに値を入力する場合は、ピッカーがテキストフィールドのinputViewを表示するようにしてください。それは、キーボードのように、あなたのために適所にアニメーションします。

inputAccessoryViewにツールバーを追加し、完了したボタン、次のボタンなどを追加することもできます。

ピッカービューを入力ビューにすることは非常に簡単です。

あなたのピッカービューのデリゲートメソッドで
myTextField.inputView = myPicker; 

、あなたが更新することができます。あなたのviewDidLoadメソッドでは、通常のようにそのデータソースとデリゲートを設定し、ピケットのビューを作成し、単なるテキストフィールドの入力ビュープロパティに割り当てピッカーの選択が変更されたときに選択された値を持つテキストフィールド。テキストフィールド代行メソッドでは、ピケットが表示される前に適切な値が選択されていることを確認できます(willBeginEditing?(mac ATMではなく))。

アクセサリビューは、最初のレスポンダのステータスを終了するようにテキストフィールドに指示する完了アイテムが1つのUIToolbarにすることができます。ここでもこれを設定し、viewDidLoadに代入します。

+0

私はこのアイデアのサウンドが本当に好きです。ピッカーがinputViewをどのように見ることができるかを詳しく教えてください。 –

+0

もう少し追加しました。モバイルサイトでサンプルコードがないので、ごめんなさい!何か問題が発生した場合は、私に叫んでください。 – jrturton

+0

それは本当に本当に役に立ちました。私はそれが完璧に動作するように管理してきました - ありがとう! :) –

2

UIAlertViewのサブビューとして確かにUIPickerViewを追加することは可能ですが、アップルがあなたのアプリを拒否することは疑いがありますが、UIが貧弱になると思います。新しいUIViewControllerサブクラスを作成してUIPickerViewを含むようにして、それをモーダルに提示するのはなぜでしょうか?これははるかに一般的な対話パターンです。

2

2-3個の選択肢がある場合は、otherButtonTitles:の後にいくつかのボタンをUIAlertViewに挿入します。より多くの選択肢があれば、間違いなく新しいView Controllerを構築する必要があります。 UIAlertViewにピッカービューを追加しようとしないでください。

0

1)これはiOS SDKのバージョンで簡単に行うことができます。 UIAlertViewsは基本的にはUIViewsのサブクラスなので、簡単に使用できますaddSubview:

2)これはオプションリストのコンテキストによって異なります。誕生日や日付や時刻などの選択肢については、Appleは別のUIViewControllerを使用してUITableView(1行)とUIPickerViewを使用します。上記の3つのいずれでもない場合、Appleは一般的にUITableViewを使用するように見えます。このチェックボックスをオンにすると、その人の選択の横にチェックマークが付きます。

いずれにしても、誰もがオプションのリストで2番目のページを表示する必要があると私は思っています。

関連する問題