有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java操作栏上下文菜单

当用户单击listview中的项目时,我试图进入上下文操作栏。我有这个密码

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);                
            }

    });     

问题是Eclipse在startActionMode中给了我一个错误:

The method startActionMode(ActionMode.Callback) in the type Activity is not applicable for the arguments (ActionMode.Callback)

我怎样才能解决这个问题


共 (2) 个答案

  1. # 1 楼答案

    因为您正在使用支持库,所以必须使用startSupportActionMode(Callback)而不是startActionMode(Callback){a1}

  2. # 2 楼答案

    您的代码没有问题,请检查这些导入

    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;
    

    并尝试重新清洁和建造