`
xp9802
  • 浏览: 1185471 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Android中onContextItemSelected不响应

 
阅读更多

Android中onContextItemSelected不响应是怎么回事?
在实现一个Contextual Menu时,onCreateContextMenu()是成功执行了的,但长按显示出上下文菜单时,点击其中一个item,onContextItemSelected()中的内容并没有被执行,请问这是为什么?

public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

TextView tv = (TextView)findViewById(R.id.hint);
tv.setText("this is a textview");
registerForContextMenu(tv);

}

public boolean onContexItemSelected(MenuItem item){
  super.onContextItemSelected(item);
  Log.d("ContextMenu", item.getTitle()+" is selected!");
  Toast.makeText(this, "Hleele;", Toast.LENGTH_LONG).show();
  return false;
  
  }
 
  
  public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
  super.onCreateContextMenu(menu, v, menuInfo);
MenuItem cmitem1 = menu.add(0, Menu.FIRST, Menu.NONE, "item1");
MenuItem cmitem2 = menu.add(0, Menu.FIRST+1, Menu.NONE, "item2");
MenuItem cmitem3 = menu.add(0, Menu.FIRST+2, Menu.NONE, "item3");
/*cmitem1.setCheckable(true)
.setChecked(true);
cmitem2.setCheckable(true);
cmitem3.setCheckable(true);*/

}
  
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}


@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}


------解决方案--------------------
onContexItemSelected 返回true

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics