也许你会看到我没有看到的东西。我不明白为什么它拒绝对齐。我在布局中有2个微调器,并尝试将文本对齐到中心。 在两个微调器中,文本与左侧对齐。 这是代码。
Xml代码:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="36dp"
android:background="@color/orange"
android:gravity="bottom|center_vertical" >
<Spinner
android:id="@+id/sub_from_category"
android:layout_width="wrap_content"
android:layout_gravity="center"
android:layout_weight="2"
android:layout_height="35dp"
android:background="@drawable/spinners" />
<View
android:layout_width="2dp"
android:layout_height="wrap_content"
android:layout_weight="0"
android:layout_marginLeft="1dp"
android:layout_marginRight="1dp"
android:background="@android:color/darker_gray" />
<Spinner
android:id="@+id/sub_to_category"
android:layout_width="wrap_content"
android:layout_gravity="center"
android:layout_weight="2"
android:layout_height="35dp"
android:background="@drawable/spinners" />
</LinearLayout>
xml代码:
<TextView
android:id="@+id/spinnerTarget"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textColor="#454545"
android:background="@color/orange"
android:textSize="1/>
和Java活动:
subFromCategory = (Spinner)findViewById(R.id.sub_from_category);
subToCategory = (Spinner)findViewById(R.id.sub_to_category);
ArrayAdapter<String> adapterF = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,Angle);
adapterF.setDropDownViewResource(R.layout.sub_spinner);
subFromCategory.setAdapter(adapterF);
ArrayAdapter<String> adapterT = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,Angle);
adapterT.setDropDownViewResource(R.layout.sub_spinner);
subToCategory.setAdapter(adapterT);
谢谢你, 尼鲁
答案 0 :(得分:1)
永远记住这一点:
layout gravity
- 在其父视图中指定对象本身 的“重力”的属性。
gravity - 一个属性,用于指定对象内 子视图 的“重力”。
答案 1 :(得分:1)
我有同样的问题,解决方案“简单”。您必须有“空格”才能将其设置在中心。
错:
<Spinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
右:
<Spinner
android:id="@+id/spinner"
android:layout_width="100dp"
android:layout_height="wrap_content"
/>