如何在Android中以编程方式创建菜单?
现在我想在屏幕底部添加一个菜单。 我写了很多关于这方面的文章,但仍然不知道如何做到这一点。 我的主要问题是我的主页上没有xml文件。 它看起来像:如何在Android中以编程方式创建菜单?,android,xml,layout,menu,Android,Xml,Layout,Menu,现在我想在屏幕底部添加一个菜单。 我写了很多关于这方面的文章,但仍然不知道如何做到这一点。 我的主要问题是我的主页上没有xml文件。 它看起来像: public class start extends ListActivity { static final String[] COUNTRIES = new String[] { "NEWS1", "NEWS2","RADIO"}; Intent intent; public void onCreate(
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);
公共类开始扩展ListActivity{
静态最终字符串[]国家/地区=新字符串[]{
“新闻1”、“新闻2”、“广播”};
意图;
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setListAdapter(新的ArrayAdapter(这个,android.R.layout.simple_list_item_1,COUNTRIES));
ListView lv=getListView();
lv.setTextFilterEnabled(真);
lv.setOnItemClickListener(新的OnItemClickListener(){
public void onItemClick(AdapterView父级、视图、,
内部位置,长id){
if(((TextView)view.getText().equals(“NEWS1”)){
intent=新intent(start.this、NewsActivity.class);
如何添加带有操作的菜单。
请给我举个例子。
谢谢使用此代码动态添加菜单
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;
}
如果您的主要活动中没有XML文件,这很好。您仍然可以按照以下步骤向其添加菜单->
public boolean oncreateoptions菜单(菜单菜单){
getMenuInflater().inflate(R.menu.yourmenuxmlfilename,菜单);
返回true;
}
公共布尔值onOptionsItemSelected(菜单项项){
开关(item.getItemId){
案例R.id.1:
//你想用第一个按钮做什么
打破
案例
打破
}
返回true;
}
对于上下文菜单,您只需添加
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");
}
});
上下文菜单仅在长时间单击选项菜单的列表项时出现
@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
创建一个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
按手机上的菜单按钮时,按Tab Menu或中的菜单?手机上的菜单按钮此方法OnCreateOptions菜单(菜单菜单菜单)从我需要调用它的位置(从什么方法调用它?)以及如何向菜单添加项?只需将此方法添加到start类,但请记住不要在onCreate()中添加此方法方法,分别添加它们。然后转到菜单XML文件向其中添加项目。这非常简单。感谢您的工作,但项目是黑色的,我无法在黑色字体上看到它们。如果我的答案有帮助,请更新我的答案。关于黑色背景,您可以向项目添加图标,以便您可以看到它们。
公共布尔值有什么用OnPrepareOptions菜单(菜单菜单)
方法?删除它不会显示任何区别。