现在我想在屏幕底部添加一个菜单。 我写了很多关于但仍然没有得到如何做到这一点。 我的主要问题是我的主页上没有xml文件。 它看起来像是:
public class start extends ListActivity {
static final String[] COUNTRIES = new String[] {
"NEWS1", "NEWS2","RADIO"};
Intent intent;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, COUNTRIES));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
if (((TextView) view).getText().equals("NEWS1")){
intent = new Intent(start.this, NewsActivity.class);
如何添加带动作的菜单。 请举个例子。 感谢
答案 0 :(得分:35)
使用此代码动态添加菜单
private static final int NEW_MENU_ID=Menu.FIRST+1;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
menu.add(0, NEW_MENU_ID, 0, "New");
return true;
}
答案 1 :(得分:6)
如果您的主要活动中没有XML文件,那就太好了。您仍然可以按照以下步骤为其添加菜单 - &gt;
现在在您的主要活动代码中添加这两个方法 - &gt;
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.yourmenuxmlfilename, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item){
switch(item.getItemId){
case R.id.item1:
// what you want to do with first button
break;
case .....
break;
}
return true;
}
答案 2 :(得分:1)
对于上下文菜单,您只需添加
getListView().setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.setHeaderTitle("Options");
menu.add("Option1");
menu.add("Option2");
menu.add("Option3");
}
});
长按菜单只显示上下文菜单
答案 3 :(得分:-1)
对于选项菜单
创建一个在选项菜单中膨胀的android xml文件
@Override
public boolean onCreateOptionsMenu(Menu menu) {
new MenuInflater(this).inflate(R.layout.options, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
//and your action for menu item click goes here