1

У меня проблема с пользовательским списком ListView-Adapter. Итак, я пытаюсь запустить ActionMode ActionBarSherlock, когда установлен флажок (у каждого Listitem есть). Я внедрил OnClickListener непосредственно в адаптер:Запустить ActionMode() из Listadapter

((CheckBox) holder.check_entry).setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     //code 
    } 
}); 

Как правильно запустить ActionMode?

Надеюсь, вы можете мне помочь.

ответ

1

Получить ссылку на мероприятие и позвонить Activity#startActionMode(ActionMode.Callback callback). В качестве параметра вам необходимо передать реализацию интерфейса ActionMode.Callback. Проверьте ActionMode sample ActionBarSherlock.

Кстати, что касается ListView с чекбоксами, я бы посмотрел android:choiceMode и ListView#isItemChecked(int position).

+0

Вы хотите сказать: MainActivity reference = new MainActivity(); ? Спасибо за ваш ответ – Battlestr1k3

+0

Редактировать: У меня есть: MainActivity.startActionMode (MainActivity.mActionModeCallback); Но обратный вызов должен быть статическим (public static ActionMode.Callback mActionModeCallback), но тогда некоторые команды в обратном вызове не будут работать, потому что я не могу сделать статический объект dbhelper (зависит от частного db dbhelper = new db (this);) – Battlestr1k3

+0

Если вы объявили адаптер в рамках действия, вы можете просто написать 'startActionMode (...)'. Почему обратный вызов должен быть статическим? Реализуйте его так же, как это делается в образце, с которым я связан. –

Смежные вопросы