操作栏上缺少操作图标
Missing Action Icons on Action Bar
我在这里读了很多条目,还有 Android 文档:http://developer.android.com/guide/topics/ui/actionbar.html
我从 Android Studio 创建了一个新应用,将最小 SDK (21) 和目标 SDK (22) 设置为 Android 5(我不需要向后兼容性)。
这是我的 menu.xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/undo"
android:icon="@drawable/undo"
android:title="@string/undo"
app:showAsAction="always"
/>
<item android:id="@+id/clear"
android:title="@string/clear"/>
...
</menu>
这是我相当简单的 onCreate:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
paintView = (PaintView) findViewById(R.id.view);
client = new GoogleApiClient.Builder(this).addApi(Wearable.API).build();
}
我已经尝试了 always 和 ifRoom,并确保为每个 DPI 完成撤消可绘制,但撤消按钮拒绝出现(在 Nexus 4 上测试,它有足够的 space 至少几个图标...)!
我目前的解决方案是使用带有 imageButton 和 onClick 的 customView(这可行),但我想知道可能是什么问题。
如果您不使用 AppCompatActivity
或基于它构建的任何东西(例如 Design Library),那么您不需要 app:showAsAction
- 只需使用 android:showAsAction
.
如果您想忽略伴随忽略 AppCompat` 而使用框架版本的所有内容(不推荐)带来的 lint 错误,您可以添加 tools:ignore="AppCompatResource"
。
我在这里读了很多条目,还有 Android 文档:http://developer.android.com/guide/topics/ui/actionbar.html
我从 Android Studio 创建了一个新应用,将最小 SDK (21) 和目标 SDK (22) 设置为 Android 5(我不需要向后兼容性)。
这是我的 menu.xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/undo"
android:icon="@drawable/undo"
android:title="@string/undo"
app:showAsAction="always"
/>
<item android:id="@+id/clear"
android:title="@string/clear"/>
...
</menu>
这是我相当简单的 onCreate:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
paintView = (PaintView) findViewById(R.id.view);
client = new GoogleApiClient.Builder(this).addApi(Wearable.API).build();
}
我已经尝试了 always 和 ifRoom,并确保为每个 DPI 完成撤消可绘制,但撤消按钮拒绝出现(在 Nexus 4 上测试,它有足够的 space 至少几个图标...)!
我目前的解决方案是使用带有 imageButton 和 onClick 的 customView(这可行),但我想知道可能是什么问题。
如果您不使用 AppCompatActivity
或基于它构建的任何东西(例如 Design Library),那么您不需要 app:showAsAction
- 只需使用 android:showAsAction
.
如果您想忽略伴随忽略 AppCompat` 而使用框架版本的所有内容(不推荐)带来的 lint 错误,您可以添加 tools:ignore="AppCompatResource"
。