Android:Spinner选择对齐左侧

Nou*_*n H 3 layout android arabic gravity spinner

我完成了我的应用程序的英文版本,现在我正在进行阿拉伯语本地化.阿拉伯语是一种从右到左的语言,所以我需要在布局中调整很多东西,包括我的微调器显示.

当我从微调器选择菜单中选择一个项目时,我看到以下内容,

微调器选择

如您所见,"过敏"与旋转箭头的左侧和顶部对齐.我需要它与右边对齐.

注意阿拉伯语Web服务尚未完成,这就是图像中的数据仍为英语的原因.

编辑

Spinner mSpecialtySpinner = (Spinner) findViewById(R.id.specialty_appointment_spinner);
        ArrayAdapter<Specialty> adapter = new ArrayAdapter<Specialty>(AppointmentReservationActivity.this,android.R.layout.simple_spinner_item, specialities);
        adapter.setDropDownViewResource(R.layout.spinner_item);
        mSpecialtySpinner.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

Adi*_*mro 11

那么你可以为Spinner设置另一个布局并将其传递给ArrayAdapter's构造函数.

spinner_layout.xml在布局中命名一个xml文件,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1" 
    android:layout_height="?android:attr/listPreferredItemHeight"
    android:layout_width="fill_parent"
    android:textSize="20sp"
    android:paddingLeft="6dip"
    android:paddingRight="6dip" 
    android:gravity="right"
     />
Run Code Online (Sandbox Code Playgroud)

现在在ArrayAdapter's构造函数中传递它,如下所示:

new ArrayAdapter<String>(this,R.layout.spinner_layout,conversionsadd);
Run Code Online (Sandbox Code Playgroud)

请记住:

我们R.layout.spinner_layoutArrayAdapter构造函数中提供的是Spinner的布局.以及我们将提供setDropdownView()的Spinner项目(下拉项目).

你可以在这里查看我的另一个相对答案