布局中的元素未显示(由另一个元素覆盖)

时间:2011-12-29 15:44:39

标签: android layout text scroll textview

这是我一直在研究的自定义警报对话框的布局。它只是一个带有CheckBox的TextView:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<ScrollView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/help_dialog_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20dp" />
</ScrollView>

<CheckBox
    android:id="@+id/display_help_dialogs_checkbox"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:text="@string/display_help_dialogs" />

当TextView的textSize足够大时(即当ScrollView实际上“投入使用”时),CheckBox无处可见。

感谢您的帮助, 米切尔

1 个答案:

答案 0 :(得分:2)

我相信你的ScrollView正在推动Checkbox超出布局范围。尝试这样的事情:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >

  <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/help_dialog_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20dp" />

    <CheckBox
        android:id="@+id/display_help_dialogs_checkbox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/display_help_dialogs" />
  </LinearLayout>
</ScrollView>

在这种情况下,您可能需要指定滚动视图的尺寸,但应该发生的是LinearLayout变得比ScrollView中指定的区域大。然后ScrollView将允许用户向下滚动布局以查看其余部分。