- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为什么当我使用下面的 menu.xml 时图标没有出现!!.请帮助我。
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<group android:id="@+id/group1">
<item android:id="@+id/item1" android:title="Embelance" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher" >
<menu>
<item android:id="@+id/E_H1" android:title="To home" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher"/>
<item android:id="@+id/E_W1" android:title="To work" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher"/>
<item android:id="@+id/E_O1" android:title="To oppional" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher"/>
</menu>
</item>
<item android:id="@+id/item2" android:title="Fier" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher">
<menu>
<item android:id="@+id/F_H1" android:title="To Home" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher"/>
<item android:id="@+id/F_W1" android:title="To work" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher"/>
<item android:id="@+id/F_O1" android:title="To Optional" android:showAsAction="always|withText"
android:icon="@drawable/ic_launcher"/>
</menu>
</item>
</group>
当使用下一个属性时,它表明应用程序中存在错误。 : window 说项目包含错误,在运行之前修复它或类似的东西。
android:icon="@android:drawable/ic_launcher"
代码是:
@Override
public void onCreateContextMenu(ContextMenu menu,View v,ContextMenuInfo menuInfo) {
// Inflate the menu; this adds items to the action bar if it is present.
super.onCreateContextMenu(menu, v, menuInfo);
getMenuInflater().inflate(R.menu.main_context_menu, menu);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
// .......
switch(item.getItemId()){
case R.id.E_H1: // ...........
break;
case...case....case...... // other cases
return super.onContextItemSelected(item);
}
最佳答案
我会尝试回答这个问题,但到目前为止我还不是 100% 清楚这个问题。根据评论,您似乎想知道如何在菜单项中将图标与文本结合起来。
为此,您已在问题中自己提供了答案:第 3 项包含您需要的内容。如果您希望在菜单项 block 中对项目进行分组,那么您可以像以前一样使用组,但特别是对于您的示例,该组毫无意义。像下面这样的东西就足够了(在 Motorola Defy 2.3.6 和 Nexus 4 上运行):
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/context_setting_item1"
android:icon="@drawable/ic_launcher"
android:title="@string/action_settings">
</item>
</menu>
在您的 Activity
中,您将拥有(假设菜单位于 /res/menu/entry.xml
中):
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.entry, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.context_setting_item1:
Toast.makeText(this, "context_setting_item1 selected", Toast.LENGTH_LONG).show();
return true;
}
return super.onOptionsItemSelected(item);
}
现在,回到菜单项一般性讨论:这些可视组件已被 ActionBar 取代- 在公开内容/应用程序层次结构时更友好、更直接,而且很性感! :)
要深入开发,您可以查看此 Android 开发人员博客,"Goodbye to MenuItem".有关更多开发详细信息,请查看 developer section .从编程的角度来看,这没什么大不了的,因为操作栏组件是使用 xml 中的 menu items
开发的。您只需要提供更多 XML 属性。
例如:只有上面的xml更改为:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/context_setting_item1"
android:icon="@drawable/ic_launcher"
android:showAsAction="always|withText"
android:title="@string/action_settings">
</item>
</menu>
Activity 代码保持原样。
请注意,我只添加了 android:showAsAction="always|withText"
。
有趣的是,Motorola 2.3.6 没有任何变化(因为 ActionBar
是在 API 级别 11 中添加的),但在 Nexus 上,您会注意到顶部操作栏的图标位于顶部。以前,它有一个 3 点,用户必须点击它们才能查看操作。
如果你希望 api 级别低于 11 的操作栏,我强烈建议使用 Sherlock ActionBar .
关于android - 如何在 Android 应用程序中将图标放在 menu_item 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17703111/
为什么当我使用下面的 menu.xml 时图标没有出现!!.请帮助我。
我是一名优秀的程序员,十分优秀!