为什么下拉项目宽度大于android中的微调器宽度?

时间:2015-05-18 21:50:10

标签: android android-listview android-spinner

我开发了一个自定义微调器,但我的微调器下拉项显示大于微调器背景。这对用户来说非常尴尬。我尝试了很多东西,但我无法弄清楚这背后的问题是什么。任何人都可以帮我解决这个问题。这是微调器和下拉列表项布局。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">

    <TextView
        android:id="@android:id/title"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight=".36"
        android:paddingLeft="@dimen/spinner_title_padding_left"
        android:paddingTop="@dimen/spinner_title_padding_top"
        android:paddingBottom="@dimen/spinner_tittle_padding_bottom"
        android:maxLength="@integer/spinner_title_max_length"
        android:singleLine="true" />

    <TextView
        android:id="@android:id/text1"
        android:layout_width="0dp"
        android:layout_weight=".64"
        android:layout_height="wrap_content"
        android:paddingRight="@dimen/spinner_text_padding_right"
        android:paddingLeft="@dimen/spinner_title_padding_left"
        android:paddingTop="@dimen/spinner_text_padding_top"
        android:paddingBottom="@dimen/spinner_text_padding_bottom"
        android:gravity="center"
        android:maxLength="@integer/spinner_text_max_length"
        android:ellipsize="end"
        android:singleLine="true" />
</LinearLayout>

这是输出enter image description here

1 个答案:

答案 0 :(得分:0)

尝试在string programDataDir = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData); string subDir = "MyApp"; string logFilePath = Path.Combine(programDataDir, subDir);

中使用wrap_content代替match_parent
LinearLayout

这是因为列表中的项目不适合一行。由于您要按重量设置2个子视图的宽度并使用父级的wrap_content宽度,因此您的下拉项目必须在36%x 64%条件下尽可能大地扩展