2013-12-15 2 views
0

Я пытаюсь войти в контекстный ActionBar, когда пользователь нажимает на элемент в списке. У меня есть этот код.Контекстное меню ActionBar

private ActionMode.Callback mActionModeCallback = new ActionMode.Callback(){ 

     @Override 
     public boolean onCreateActionMode(ActionMode mode, Menu menu) { 
       MenuInflater inflater = mode.getMenuInflater(); 
       inflater.inflate(R.menu.contextual_action_bar, menu); 
       return true; 
      } 

     @Override 
     public void onDestroyActionMode(ActionMode mode) { 

     } 

     @Override 
     public boolean onActionItemClicked(ActionMode mode, MenuItem item) { 
      switch (item.getItemId()) { 
       case R.id.menu_item1: 
        return true; 
       case R.id.menu_item2: 
        //close the action mode 
        //mode.finish(); 
        return true; 
       default: 
        mode.finish(); 
        return false; 
      } 
     } 

     @Override 
     public boolean onPrepareActionMode(ActionMode arg0, Menu arg1) { 
      // TODO Auto-generated method stub 
      return false; 
     } 
    }; 

В том же классе у меня есть

myListView.setOnItemClickListener(new OnItemClickListener() { 

      public void onItemClick(AdapterView<?> parent, View v, int position, long id) 
      { 

       startActionMode(mActionModeCallback);     
      } 

    });  

Проблема заключается в том, что затмение дает мне ошибку в startActionMode:

Метод startActionMode (ActionMode.Callback) в типе деятельности не применяется для аргументов (ActionMode.Callback)

H ow я могу решить это?

+0

версии Android вы тестирование с? –

ответ

0

Там не проблема с кодом, проверьте этот импорт

import android.view.ActionMode; 
import android.view.Menu; 
import android.view.MenuInflater; 
import android.view.MenuItem; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.AdapterView.OnItemClickListener; 
import android.widget.ListView; 

и попытаться очистить и построить заново.

+0

У меня этот импорт, кроме ActionMode, потому что я использую библиотеку поддержки v7, поэтому я импортирую импорт android.support.v7.view.ActionMode; Это ошибка? – user3103764

+0

Почему вам нужна эта библиотека? – keshav

+0

См. Это может быть полезно http://stackoverflow.com/questions/18632206/bug-in-lib-support-v7-with-startsupportactionmode – keshav

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