导航抽屉中的更改位置图标

时间:2017-12-12 13:49:52

标签: android navigation-drawer right-to-left

在我的NavigationDrawer中,我将图标添加到我的列表中,但我无法将位置更改为左侧。

我的NavigationDrawer xml:

<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">

<item android:title="صفحه اصلی"
      android:id="@+id/menuitem1"
    app:showAsAction="never"/>

<item android:title="درباره ما"
      android:id="@+id/menuitem2"
    app:showAsAction="never"
    android:icon="@drawable/newclassicon2"/></menu>

我的NavigationView xml:

    <android.support.design.widget.NavigationView
    android:id="@+id/navigation_view"
    android:layout_width="250dp"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:menu="@menu/navigation_menu"
    app:headerLayout="@layout/navigation_header"
    tools:layout_editor_absoluteY="8dp"
    tools:layout_editor_absoluteX="0dp">
</android.support.design.widget.NavigationView>

enter image description here

1 个答案:

答案 0 :(得分:1)

首先获取区域设置并设置偏好设置,然后在 drawable 文件夹中创建 layout-ar 文件夹创建一个布局的四个相同文件,并将两个文件放在简单的布局中,然后将两个文件放在下面提到的 layout-ar 文件夹中。

导航抽屉适配器: -

 mainSettinglanguage = AppPreference.getStringPref(context, AppPreference.PREF_MAIN_SETTING_LANGUAGE, AppPreference.PREF_KEY.MAIN_SETTING_LANGUAGE);
        if (mainSettinglanguage != null && mainSettinglanguage.equals("ar")) {
            view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.section_list_item_ar, viewGroup, false);
        } else {
            view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.section_list_item, viewGroup, false);
        }

<强>布局 - &GT; item.xml

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="2dp"
    android:paddingRight="2dp">

    <RelativeLayout
        android:id="@+id/ll_section_check"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="5dp"
        android:paddingRight="5dp">

        <CheckBox
            android:id="@+id/chk_section"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="10dp" />


        <TextView
            android:id="@+id/tv_section_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:layout_toRightOf="@+id/chk_section"
            android:gravity="center_vertical"
            android:text="AAA"
            android:textColor="@color/black"
            android:textSize="16dp" />

    </RelativeLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@color/view_color" />
</LinearLayout>

layout-ar - &gt; item.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="2dp"
    android:paddingRight="2dp">


    <RelativeLayout
        android:id="@+id/ll_section_check"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="5dp"
        android:paddingRight="5dp">

        <CheckBox
            android:id="@+id/chk_section"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:gravity="right|center_vertical" />

        <TextView
            android:id="@+id/tv_section_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:layout_toLeftOf="@+id/chk_section"
            android:gravity="right|center_vertical"
            android:text="AAA"
            android:textColor="@color/black"
            android:textSize="16dp" />
    </RelativeLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@color/view_color" />
</LinearLayout>

布局 - &gt; view.xml用

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="2dp"
    android:paddingRight="2dp">


    <RelativeLayout
        android:id="@+id/ll_section_check"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="5dp"
        android:paddingRight="5dp">

        <CheckBox
            android:id="@+id/chk_section"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:gravity="right|center_vertical" />

        <TextView
            android:id="@+id/tv_section_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:layout_toRightOf="@+id/chk_section"
            android:gravity="left|center_vertical"
            android:text="AAA"
            android:textColor="@color/black"
            android:textSize="16dp" />
    </RelativeLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@color/view_color" />
</LinearLayout>

layout-ar - &gt; view.xml用

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingLeft="2dp"
    android:paddingRight="2dp">

    <RelativeLayout
        android:id="@+id/ll_section_check"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="5dp"
        android:paddingRight="5dp">

        <CheckBox
            android:id="@+id/chk_section"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="10dp" />


        <TextView
            android:id="@+id/tv_section_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:layout_toLeftOf="@+id/chk_section"
            android:gravity="center_vertical"
            android:text="AAA"
            android:textColor="@color/black"
            android:textSize="16dp" />

    </RelativeLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@color/view_color" />
</LinearLayout>

希望这可以帮到你。