У меня есть ListFragment с MultiChoice listView. Я хотел бы ограничить количество вариантов до 3. Для этого я реализую MultiChoiceModeListener в моем onViewCreated. По какой-то причине Слушатель не работает?MultiChoiceModeListener в ListFragment не работает? Использовать onListItemClick как альтернативу
Однако; работает onListItemClick?
(В качестве альтернативы: есть ли способ, чтобы следить за проверил & снят с лимитом 3 в onListItemClick?)
public class PinnedSectionListFrag extends ListFragment {...
...
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
setListAdapter(new SimpleAdapter(getActivity(), android.R.layout.simple_list_item_multiple_choice, android.R.id.text1));
listView = getListView();
// listView.setItemsCanFocus(false);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
@Override
public void onItemCheckedStateChanged(ActionMode mode, int position, long id, boolean checked) {
Log.e("PinnedSectionsList...","......"+position);
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
return false;
}
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
return false;
}
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
Log.e("PinnedSectionsList...","...item........"+item);
}
@Override
public void onDestroyActionMode(ActionMode mode) {
}
});
}
...
@Override // Working..
public void onListItemClick(ListView l, View v, int position, final long id) {
Item item = (Item) getListView().getAdapter().getItem(position);
if (item != null) {
Toast.makeText(getActivity(), "Item " + position + ": " + item.text, Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getActivity(), "Item " + position, Toast.LENGTH_SHORT).show();
}
}...
-Спасибо за любую помощь/ключи.