私たちが持っていると仮定します
EditText editTextTitle = (EditText) findViewById(R.id.textTitle);
ユーザーがテキスト フィールドに触れると、テキストを書き込むためにキーボードが表示されます。これの代わりに、いくつかの要素を含む複数選択リストを表示したいと考えています。ユーザーが選択した項目を確認したら、これらの要素のテキストを editTextTitle に渡したいと思います。それは可能ですか?
おそらくスピナーを使用できます。見栄えの良い正確なサービスを提供します。
http://developer.android.com/guide/topics/ui/controls/spinner.html
もちろん、EditText に OnClickListener を設定するだけでカスタム ダイアログが開きます。また、コールバックを使用して、ユーザーが選択した選択肢を EditText に割り当てます (これを行う場合)。
添加
onClickListener で onCreateDialog(Bundle savedInstanceState) を渡すにはどうすればよいですか?
onCreateDialog(Bundle savedInstanceState)
はDialogFragmentのメソッドであるため、フラグメントを作成するすべての方法をカバーする1つの答えを与えることは不可能です...しかし、初期化された名前のDialogFragmentがすでにあり、準備ができていると仮定しましょdialogFrag
う:
editTextTitle.setOnClickListener(new OnClickListener() {
@Override
public void onClick (View v) {
dialogFrag.show();
}
}