Android上下文菜单
很多时候我们会用到上下文菜单,虽然简单,可有时候还是会忘记,所以我就写了一个Dome来记录一下,有兴趣的朋友也可以看看:
public class MainActivity extends AppCompatActivity {
private TextView mTv_title;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTv_title = (TextView) findViewById(R.id.tv_title);
/* 这里 注册上下文菜单*/
this.registerForContextMenu(mTv_title);
}
/**
* 生成上下文菜单
* 生成上下文菜单有两种方式
* 1.在XML文件中配置
* 2.在代码中直接写
* @param menu
* @param v
* @param menuInfo
*/
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
/**
* GroupID 组的ID
* ItemID 条目ID
* Order 排序方式
* Title 标题{菜单}内容
*/
menu.add(0,1,ContextMenu.NONE,"泰山爬山");
menu.add(0,2,ContextMenu.NONE,"北京故宫");
menu.add(0,3,ContextMenu.NONE,"泰国普吉岛");
menu.add(0,4,ContextMenu.NONE,"西柏坡革命圣地");
menu.add(0,5,ContextMenu.NONE,"在家里宅着学习");
}
/**
* 相应的上下文菜单
* @param item
* @return
*/
@Override
public boolean onContextItemSelected(MenuItem item) {
/*只做个吐丝,就不做逻辑操作了*/
switch (item.getItemId()){
case 1:
Toast.makeText(this, "泰山爬山", Toast.LENGTH_SHORT).show();
break;
case 2:
Toast.makeText(this, "北京故宫", Toast.LENGTH_SHORT).show();
break;
case 3:
Toast.makeText(this, "泰国普吉岛", Toast.LENGTH_SHORT).show();
break;
case 4:
Toast.makeText(this, "西柏坡革命圣地", Toast.LENGTH_SHORT).show();
break;
case 5:
Toast.makeText(this, "在家里宅着学习", Toast.LENGTH_SHORT).show();
break;
default:
break;
}
return super.onContextItemSelected(item);
}
}
这就简单的实现了我们想要的上下文菜单效果.