Android Long Press Spinner View

时间:2011-09-18 16:49:46

标签: android contextmenu spinner

我希望能够在微调器视图中长按项目并显示contextMenu。我试过这段代码:

spinner = (Spinner) findViewById(R.id.catagorySpinner);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(context,android.R.layout.simple_dropdown_item_1line, data);
spinner.setAdapter(adapter);
registerForContextMenu(spinner);

但是你可以猜到,这为实际的Spinner添加了一个上下文菜单,而不是内部的内容。有谁知道我怎么做到这一点?

2 个答案:

答案 0 :(得分:1)

你试过这个吗?

        spinner.setOnItemLongClickListener(new OnItemLongClickListener() {

            public boolean onItemLongClick(AdapterView<?> parent, View view, int arg2, long arg3) {

                view.showContextMenu();
                return true;

            }
        });

答案 1 :(得分:1)

您可以在适配器的getView()方法中注册每个项目。

View getView(View convertView, ... ) {
   ....
   // inflate view or reuse.
   ....
   getContext().registerForContextMenu(convertView);
   ....
   return convertView;
}
相关问题