【问题标题】:Using RelativeLayout inside ScrollView doesn't yield in scrolling在 ScrollView 中使用 RelativeLayout 不会产生滚动
【发布时间】:2012-04-04 23:00:47
【问题描述】:

我正在尝试让我的相对布局滚动。我将滚动视图添加为父视图,但是当我将手机或模拟器倾斜到水平位置时,它不会滚动。

我尝试了几种不同的解决方案,但似乎都不起作用。 一些包括: No scrolling in scrollviewScrollView not Working - Relative LayoutRelativeLayout with scrollview not scrolling

代码如下:

<?xml version="1.0" encoding="utf-8"?>

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ScrollView01"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:fillViewport="true"
    android:scrollbars="none">
<RelativeLayout

    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:orientation="vertical">

        <Button
            android:layout_width="200dp" 
            android:id="@+id/register_button"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:text="Register" />

        <EditText
            android:id="@+id/email2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/register_button"
            android:layout_alignLeft="@+id/register_button"
            android:layout_alignRight="@+id/register_button"
            android:hint="Re-Enter Email"
            android:inputType="textEmailAddress" />

        <EditText
            android:id="@+id/email1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/email2"
            android:layout_alignLeft="@+id/email2"
            android:layout_alignRight="@+id/email2"
            android:hint="Email"
            android:inputType="textEmailAddress" />

        <EditText
            android:id="@+id/password2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/email1"
            android:layout_alignLeft="@+id/email1"
            android:layout_alignRight="@+id/email1"
            android:hint="Repeat Password"
            android:inputType="textPassword" />

        <EditText
            android:id="@+id/password1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/password2"
            android:layout_alignLeft="@+id/password2"
            android:layout_alignRight="@+id/password2"
            android:hint="Password"
            android:inputType="textPassword" />

        <EditText
            android:id="@+id/lastName"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/password1"
            android:layout_alignLeft="@+id/password1"
            android:layout_alignRight="@+id/password1"
            android:hint="Last Name"
            android:imeOptions="actionNext"
            android:inputType="textPersonName" />

        <EditText
            android:id="@+id/firstName"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/lastName"
            android:layout_alignLeft="@+id/lastName"
            android:layout_alignRight="@+id/lastName"
            android:hint="First Name"
            android:imeOptions="actionNext"
            android:inputType="textPersonName" />

        <EditText
            android:id="@+id/userName"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/firstName"
            android:layout_alignLeft="@+id/firstName"
            android:layout_alignRight="@+id/firstName"
            android:hint="Username"
            android:imeOptions="actionNext"
            android:inputType="textPersonName" />




</RelativeLayout>
</ScrollView>

谢谢!

【问题讨论】:

    标签: android android-layout scrollview android-relativelayout


    【解决方案1】:

    您的RelativeLayout 设置为fill_parent。如果它的大小与其ScrollView 父级相同,则没有可滚动的内容。改为 wrap_content 并正确布局其子级以暗示高度。

    【讨论】:

    • 我做到了。我将 relativelayout 从填充父更改为 wrap_content。它把所有东西都扔到左边,没有滚动。我将滚动视图更改为包装内容,但无法重新对齐 relativeLayout 的字段
    【解决方案2】:

    android:fillViewport="true"

    将此行添加为您的滚动视图属性:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-09
      相关资源
      最近更新 更多