刚刚尝试在真实设备上测试我的应用程序(带有 Android 2.2 的 HTC Desire Z)。EditText
并发现我的上下文菜单在s上根本不起作用。否则上下文菜单有效: in ListView
,ImageView
依此类推。在模拟器上一切正常...
当我点击 EditText 时,它会显示类似缩放框架的内容,然后显示不寻常的(不是标准的 Android 类似的)上下文菜单,内容为:“选择文本”、“全选”。它不显示我的菜单。以下是截图:
但没有像模拟器中那样的菜单 -看这里
这是我的活动的源代码:
public class MyActivity extends Activity
{
private static final String TAG=MyActivity.class.getName();
EditText editText;
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
editText=(EditText )findViewById(R.id.editText);
this.registerForContextMenu(editText);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenu.ContextMenuInfo menuInfo)
{
Log.v(TAG, "Creating context menu for view="+view);
menu.add(Menu.NONE, Menu.FIRST+1, Menu.NONE, "Test menu");
super.onCreateContextMenu(menu, view, menuInfo);
}
@Override
public boolean onContextItemSelected(MenuItem item)
{
Log.v(TAG, "Context item selected as="+item.toString());
return super.onContextItemSelected(item);
}
}
我已经彻底调试/记录了我的代码周围的所有内容,但仍然没有调用 Activity.onCreateContextMenu() (尽管它以正确的方式注册)。
请帮忙 - 它可能是什么?它与 HTC 的特性有关吗?