Значок MenuItem неправильно отображается в макетах RTL - PullRequest
0 голосов
/ 14 января 2019

В RTL значок пункта меню опции отображается некорректно !! но в LTR все отображается хорошо и красиво.

С помощью этой команды я создаю программу RTL

getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL);

Мое меню layout.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:gravity="start"
    android:layoutDirection="rtl"
    android:layout_gravity="start">
    <item
        android:id="@+id/action_more"
        android:icon="@drawable/ic_add_white_24dp"
        android:title=""
        app:showAsAction="always">
        <menu>
            <item
                android:id="@+id/action_settings"
                android:icon="@drawable/ic_wb_sunny_black_24dp"
                android:title="آیتم شماره 1"/>

            <item
                android:id="@+id/action_settings2"
                android:icon="@drawable/ic_star_black_24dp"
                android:title="آیتم شماره 2"/>

            <item
                android:id="@+id/action_settings3"
                android:icon="@drawable/ic_wb_sunny_black_24dp"
                android:title="آیتم شماره 3"/>
        </menu>
    </item>
</menu>

Пожалуйста, помогите мне исправить это.

Скриншот

Ответы [ 2 ]

0 голосов
/ 09 апреля 2019

Пользовательская панель инструментов popupTheme, переопределить

android:layout_marginStart android:layout_marginEnd

Сначала добавьте эти строки в ваш файл res / values ​​/ styles.xml

<style name="PopupTheme" parent="ThemeOverlay.AppCompat.Light">
    <item name="android:layout_marginStart">2dp</item>
    <item name="android:layout_marginEnd">2dp</item>
</style>

затем установите popupTheme панели инструментов на «PopupTheme», как показано выше, просто так:

......
<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="@color/colorPrimary"
    app:navigationIcon="@drawable/arrow_back"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
    app:popupTheme="@style/PopupTheme"
    app:title="@string/toolbar_title"/>
......

Ура!

0 голосов
/ 14 января 2019

Вы должны создать другую папку для вашего языка

ex: layout-ar для арабского языка

...