コンテキスト アクション メニューの作成に関するAndroid の公式サイトのチュートリアルに従いました。以下のコードを使用して、ListView アイテムの 1 つを長押しすると、それが選択されますが、選択されたことを視覚的に示しません。Holo Light テーマを使用しています。ListView で選択したすべての項目の背景色が青色に変わることを期待しています。
これは正常な動作ですか?
テストを試みましlistView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
たが、1 行も強調表示されません。
を使用listView.setSelector(android.R.color.holo_blue_light);
すると、最後に選択された行が強調表示されるように見えますが、選択されている他の行は強調表示されません。
何か間違ったことをしたのでしょうか、それとも背景を手動で変更する必要がありますか? もしそうなら、どのように?
listView.setSelector(android.R.drawable.list_selector_background);
また、さまざまな状態のアイテムを含む実際のセレクターを試してみました。残念ながら、最後に選択された ListView アイテムにのみ適用されます。
public class MyActivity extends ListActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// The list is generated here
ListView listView = getListView();
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
// implements empty methods
}
}
}
ありがとう!