我试图创建一个简单的菜单,其中一个按钮将调用一个方法来清除数组。我不想使用xml,因为我只需要一个按钮。
像这样的东西-
public boolean onCreateOptionsMenu(Menu menu) {
button "Clear Array";
onClick{// run method that wipes array};
return true;
}
非常感谢。
通过编程,我能够使用以下代码创建一个简单的菜单。
private final int MenuItem_EditId = 1, MenuItem_DeleteId = 0;
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuItem edit_item = menu.add(0, MenuItem_EditId, 0, R.string.edit);
edit_item.setIcon(R.drawable.edit);
edit_item.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM);
MenuItem delete_item = menu.add(0, MenuItem_DeleteId, 1, R.string.edit);
delete_item.setIcon(R.drawable.delete);
delete_item.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM);
return super.onCreateOptionsMenu(menu);
}
类似的方法可能会奏效:
public boolean onCreateOptionsMenu(Menu menu) {
MenuItem item = menu.add ("Clear Array");
item.setOnMenuItemClickListener (new OnMenuItemClickListener(){
@Override
public boolean onMenuItemClick (MenuItem item){
clearArray();
return true;
}
});
return true;
}
菜单
为我们提供了一个方便的方法,add()
,它允许您添加菜单项。所以我们做一个。然后,我们将一个OnMenuItemClickListener
分配给MenuItem
,并覆盖它的onMenuItemClick()
,以执行我们希望它执行的操作。
A C的方法可以工作,但是您应该避免手动设置单击侦听器。尤其是当你有多个菜单项时。
我喜欢这样:
private static final int MENU_ITEM_ITEM1 = 1;
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(Menu.NONE, MENU_ITEM_ITEM1, Menu.NONE, "Item name");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MENU_ITEM_ITEM1:
clearArray();
return true;
default:
return false;
}
}
通过使用这种方法,您可以避免创建不必要的对象(侦听器),我也发现这段代码更容易阅读和理解。
我有一个充满自定义视图的应用程序。当我尝试以编程方式创建FAB时,它会抛出一个错误 原因:java.lang.IllegalArgumentException:您需要在设计库中使用theme.AppCompat主题(或后代)。
我有一个,我知道将菜单与之关联的常用方法是使用
问题内容: 我最困难的时间是在WooCommerce中以编程方式创建订单。我正在使用下面的代码,是否正在创建订单,但是我无法获得客户信息或添加到订单的产品线项目。创建的新订单只是访客,没有任何物品,用户信息等。 问题似乎是,一旦创建了订单对象,尝试向订单中添加数据时就会失败。 这是我在日志中遇到的错误: 任何帮助,将不胜感激! 问题答案: 问题出在您的动作挂钩上。使用以下钩子: 确保给定的产品ID
问题内容: 我一直在尝试以编程方式重做我的应用程序上的工作。(不使用情节提要) 除了手动制作导航控制器外,我几乎完成了。 我一直在做一些研究,但找不到任何手动实现此方法的文档。(我开始将应用程序制作为单视图应用程序) 目前,我只有1个ViewController。当然是appDelegate 导航控制器将在应用程序的所有页面中使用。 如果有人可以帮助我,或发送指向一些适当文档的链接以编程方式进行此
本文向大家介绍C#程序创建一个简单线程,包括了C#程序创建一个简单线程的使用技巧和注意事项,需要的朋友参考一下 为了创建线程,我创建了一个函数- 调用上述函数以创建线程,并创建一个新的ThreadStart委托- 示例 使用以下代码创建一个简单的线程。 输出结果
pre { white-space: pre-wrap; } 菜单(Menu)定义在一些 DIV 标记中,如下所示: <div id="mm"> <div onclick="javascript:alert('new')">New</div> <div> <span>Open</span> <div>