2013.12.03 ——— android onPrepareOptionsMenu onCreateOptionsMenu onCreateContextMenu
1、onCreateOptionsMenu onCreateContextMenu的区别
参考:[url]http://blog.youkuaiyun.com/sunnyfans/article/details/9966263[/url]
onCreateOptionsMenu:初始化Menu
onCreateContextMenu:用于view长按显示的菜单
2、onPrepareOptionsMenu onCreateOptionsMenu 区别
参考:[url]http://blog.youkuaiyun.com/sky181772733/article/details/6922615[/url]
onPrepareOptionsMenu:每次按menu键都会调用 所以它可以用来更新menu
onCreateOptionsMenu :只会调用一次
1、onCreateOptionsMenu onCreateContextMenu的区别
参考:[url]http://blog.youkuaiyun.com/sunnyfans/article/details/9966263[/url]
onCreateOptionsMenu:初始化Menu
onCreateContextMenu:用于view长按显示的菜单
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button b = (Button) findViewById(R.id.button1);
/*给View 的子控件绑定ContextMenu 菜单,长按此子控件就会弹出ContextMenu菜单*/
registerForContextMenu(b);
}
/* 每次长按ContextMenu被绑定的View的子控件,都会调用此方法*/
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
System.out.println("onCreateContextMenu------>");
getMenuInflater().inflate(R.menu.main, menu);
super.onCreateContextMenu(menu, v, menuInfo);
}
@Override
public boolean onContextItemSelected(MenuItem item)
{
System.out.println("onContextItemSelected------>"+item.getItemId());
return true;
}
/* 第一次按点击手机上界面上的菜单键,会调用此方法,只方法只调用一次*/
@Override
public boolean onCreateOptionsMenu(Menu menu) {
System.out.println("onCreateOptionsMenu------>");
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
System.out.println("onPrepareOptionsMenu------>");
return super.onPrepareOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
System.out.println("onOptionsItemSelected------>"+item.getItemId());
return true;
}
}
2、onPrepareOptionsMenu onCreateOptionsMenu 区别
参考:[url]http://blog.youkuaiyun.com/sky181772733/article/details/6922615[/url]
onPrepareOptionsMenu:每次按menu键都会调用 所以它可以用来更新menu
onCreateOptionsMenu :只会调用一次