我是使用scrollView的新手,所以请耐心等待我:)
我试图创建一个scrollView的整个视图,但scrollView不会滚动。
这是我的xml代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/general_form_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg"
android:fillViewport="true"
android:orientation="vertical" >
<ScrollView
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:scrollbars="vertical" >
<RelativeLayout
android:id="@+id/form_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:padding="10dp" >
<WebView
android:id="@+id/myWebView"
android:layout_width="match_parent"
android:layout_height="250dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" />
<EditText
android:id="@+id/FirstNameRegister"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/myWebView"
android:autoText="false"
android:editable="true"
android:ems="10"
android:hint="Full name"
android:imeOptions="flagNoExtractUi"
android:selectAllOnFocus="true"
android:singleLine="true" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:text="+" />
<ProgressBar
android:id="@+id/myProgressBar"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/myWebView"
android:layout_centerHorizontal="true"
android:layout_marginBottom="84dp" />
<EditText
android:id="@+id/PhoneRegister"
android:layout_width="205dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/EmailRegister"
android:autoText="false"
android:editable="true"
android:ems="10"
android:hint="phone"
android:imeOptions="flagNoExtractUi"
android:inputType="phone"
android:selectAllOnFocus="true"
android:singleLine="true" />
<EditText
android:id="@+id/EmailRegister"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/myWebView"
android:layout_alignBottom="@+id/myWebView"
android:layout_alignParentRight="true"
android:layout_marginRight="23dp"
android:autoText="false"
android:editable="true"
android:ems="10"
android:hint="Email"
android:imeOptions="flagNoExtractUi"
android:inputType="textEmailAddress"
android:selectAllOnFocus="true"
android:singleLine="true" />
<EditText
android:id="@+id/DialZonePhoneRegister"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/myWebView"
android:layout_alignBottom="@+id/myWebView"
android:layout_alignLeft="@+id/textView1"
android:autoText="false"
android:editable="true"
android:ems="10"
android:hint="3344"
android:imeOptions="flagNoExtractUi"
android:inputType="number"
android:selectAllOnFocus="true"
android:singleLine="true" >
</EditText>
</RelativeLayout>
</ScrollView>
<Button
android:id="@+id/SubmitRegisterButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_below="@+id/EmailRegister"
android:layout_centerHorizontal="true"
android:background="@drawable/s" />
</RelativeLayout>
请帮助我:)
答案 0 :(得分:2)
您必须将form_layout的布局参数更改为:
android:id="@+id/form_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
android:padding="10dp" >
换句话说,布局高度必须是wrap_content。 如果高度设置为match_parent,则它将从父布局填充屏幕高度,并且不会覆盖位于屏幕高度上方的额外元素。
答案 1 :(得分:0)
对于两个滚动条使用此代码。在表格布局上。
<HorizontalScrollView
android:layout_height="fill_parent"
android:scrollbars="horizontal|vertical"
android:layout_width="wrap_content">
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TableLayout
android:id="@+id/tableLayout3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:background="#ffffff" >
</TableLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/linearLayout4"
android:layout_weight="1" >
<TableLayout
android:id="@+id/tableLayout2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ffffff" >
</TableLayout>
</ScrollView>
</LinearLayout>
上使用此链接滚动条
答案 2 :(得分:0)
问题在于RelativeLayout,它必须具有wrap_content的高度,因为它需要与scrollview的内容一样大才能知道要滚动多少。
<RelativeLayout
android:id="@+id/form_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp" >
答案 3 :(得分:0)
从您的按钮中删除此行
android:layout_below="@+id/EmailRegister"
运行App并查看“是否滚动”,然后查看“ Scrollview”放到根布局上,然后放到相对布局上
Scrollview -> RelativeLayout
像这样运行应用程序,不滚动,然后将Scrollview更改为NestedScrollview