我在处理 Android Honeycomb 项目时偶然发现了一个有趣的问题。如下图所示,在对话框中展开 Spinner 时,底部的导航栏与其重叠。因此,无法选择底部的元素。
为了解决这个问题,我尝试android:fitsSystemWindows="true"
在 Spinner 小部件中使用。它不起作用。我还注意到我们有一个用于下拉宽度的 XML 属性android:dropDownWidth
,但没有用于高度的 XML 属性。
这是 3 个 Spinner 的 XML 布局:
<TableRow>
<Spinner
android:id="@+id/order_dialog_category_code_Spinner"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:fitsSystemWindows="true" />
<Spinner
android:id="@+id/order_dialog_packing_code_Spinner"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:fitsSystemWindows="true" />
<Spinner
android:id="@+id/order_dialog_product_Spinner"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:fitsSystemWindows="true" />
</TableRow>
我将继续测试并希望尽快找到解决方案,但这是一个有趣的问题,值得发布。
我还没有在 Android ICS 中进行测试,但我认为它的行为可能相同。
编辑
我通过使用android:layout_marginBottom
Spinners 的属性进行了一些修复。它确实解决了这个问题,但现在我在对话框视图中也有边距,我不希望这样。
有谁知道如何仅为下拉资源设置边距?