在menu.xml中,我有两个项目。在LTR模式下它可以正确显示。但是在RTL中,它不能正确显示。缺少一项。我已经附上了屏幕截图和代码。而且我需要更改标题名称的颜色。
我在清单文件中添加了supportRTL =“ true”
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/action_settings"
android:title="@string/action_settings"
app:showAsAction="never" />
<item
android:id="@+id/notification"
android:title="Notification"
app:actionLayout="@layout/badge_counter"
app:showAsAction="always"/>
</menu>
代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu, menu);
// Create a condition (hide it if the count == 0)
if (mNotificationCounter > -1) {
BadgeCounter.update(this,
menu.findItem(R.id.notification),
R.drawable.noti,
BadgeCounter.BadgeColor.BLUE,
mNotificationCounter);
} else {
BadgeCounter.hide(menu.findItem(R.id.notification));
}
this.menu = menu;
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
this.menuItem = item;
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
} else if (id == R.id.notification) {
// If you want to update
// mNotificationCounter--;
}
return super.onOptionsItemSelected(item);
}
请仅看到该通知图标缺失。
答案 0 :(得分:0)
尝试在其中定义菜单标签。
android:layoutDirection="rtl"
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layoutDirection="rtl"
>