我完成了我的应用程序的英文版本,现在我正在进行阿拉伯语本地化。阿拉伯语是一种从右到左的语言,所以我需要在布局中调整很多东西,包括我的微调器显示。
当我从微调器选择菜单中选择一个项目时,我看到以下内容,
正如您所见,“过敏”与旋转箭头的左侧和顶部对齐。我需要它与右边对齐。
注意阿拉伯语网络服务还没有完成,这就是为什么图片中的数据仍然是英文的。
修改
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);
答案 0 :(得分: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"
/>
现在将它传递给ArrayAdapter's
构造函数,如下所示:
new ArrayAdapter<String>(this,R.layout.spinner_layout,conversionsadd);
请记住:
我们在R.layout.spinner_layout
构造函数中提供的ArrayAdapter
是Spinner的布局。我们将setDropdownView()
提供的内容是Spinner项目(下拉项目)。
您可以查看我的另一个相对答案here
答案 1 :(得分:0)
您需要做的就是创建一个新的微调器下拉布局,并在相应的小部件上设置android:gravity="right"
。
用以下方式调用:
yourSpinner.setDropDownViewResource(R.layout.right_aligned_spinner_dropdown_item);