4

したがって、オプションメニュー項目用のサブメニューがあります。ユーザーが必要な数だけ選択/選択解除できるチェック可能なエントリのリストが必要です。私が解決できない唯一の問題は、チェックボックスの1つがクリックされたときにオプションメニューが閉じないようにする方法です。PerformShortcutにFLAG_PERFORM_NO_CLOSEフラグがあるのを見ましたが、そのメソッドの使用方法がわかりません。私は多くのことを試みましたが、キーイベントがどこから来るのか、またはこれが私が見なければならない正しい方法であるかどうかについて混乱しています。

したがって、tl; dr:オプションが選択されたときにオプションメニュー/サブメニューが閉じないようにするにはどうすればよいですか?

4

1 に答える 1

0

これを処理する方法は、標準のアラートダイアログクラスを使用することです。メニューハンドラーで、AlertDialogを作成し、オプションの配列をBuilderに渡します。

注意すべき方法は次のとおりです。AlertDialog.Builder.setMultiChoiceItems(CharSequence[] items, boolean[] checkedItems, DialogInterface.OnMultiChoiceClickListener listener)

このメソッドに配列を渡し、サブメニュー選択コードをClickListenerに配置します。

于 2010-07-12T19:05:43.847 に答える