显示上下文菜单,短按不长按

seb*_*neo 7 java eclipse android contextmenu imageview

我的上下文菜单有问题,当你长按一下显示一个上下文菜单时,我有一个控件"ImageButton".

我需要通过短暂的单击显示上下文菜单,而不是长按,这可能吗?

这是我目前使用的代码,菜单完美无缺.

    private ImageView btnRutas;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.fclientes);

        btnRutas =(ImageView)findViewById(R.id.btnRutas);

        btnRutas.setOnClickListener(this);

        registerForContextMenu(btnRutas); 

    }

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {

        if(v.getId()== R.id.btnRutas) {

            menu.setHeaderIcon(android.R.drawable.ic_menu_more);
            menu.setHeaderTitle("Rutas");
            menu.add(0, 0, 0, "Ruta 1");

        } 

        super.onCreateContextMenu(menu, v, menuInfo);
    } 

    @Override
    public boolean onContextItemSelected(MenuItem item) {

    switch (item.getItemId()){

    case 0:

        function();

        }

    }
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Mat*_*att 13

我能想到的唯一方法是使用onClickListener()作为活动的一部分:

public class MyActivity extends Activity implements OnClickListener{
 protected void onCreate(Bundle bundle) {
    //Usual Activity Stuff
    View v = (View)findViewById(R.id.view); 
    v.setOnClickListener(this);
 }

 public void onClick(View v) {
  super.onClick(v);
  this.openContextMenu(v);
 }
}
Run Code Online (Sandbox Code Playgroud)

而不是专门为此创建一个新的视图,我猜你会使用你想要的任何View来应用.我希望这是你想要的,这有帮助.