我创建了一个由RelativeLayout
组成的应用。添加所有信息后,RelativeLayout
太小,无法容纳所有信息。我需要能够使用ScrollView
布局上下滚动。我已经厌倦了用RelativeLayout
替换单词ScrollView
以及在ScrollView
中添加RelativeLayout
,但随后我的应用崩溃了。所以不确定将ScrollView
放在哪里。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
tools:context=".MainActivity">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true">
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true" />
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true" />
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/btnNextScreen"
android:orientation="vertical">
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/cbk1"
android:text="CickABle CheckBox" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox" />
</LinearLayout>
<Button
android:id="@+id/btnNextScreen"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:text="NEXT SCREEN" />
</ScrollView>
</RelativeLayout>
答案 0 :(得分:1)
scrollView必须有一个孩子,所以如果你还有一个孩子,它会崩溃
答案 1 :(得分:0)
用下面的代码替换
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
tools:context=".MainActivity">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"/>
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"/>
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"/>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/btnNextScreen"
android:orientation="vertical">
<CheckBox
android:id="@+id/cbk1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox"/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox"/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox"/>
</LinearLayout>
<Button
android:id="@+id/btnNextScreen"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_alignParentBottom="true"
android:text="NEXT SCREEN"/>
</RelativeLayout>
</ScrollView>
</RelativeLayout>
希望这有帮助!
答案 2 :(得分:0)
ScrollView must have one child
并且您还需要将ScrollView
设为父级布局。尝试这样做:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentTop="true"
android:background="@android:color/black"
android:fillViewport="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true" />
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true" />
<mudasir.com.gifsimages.GIF.GifImageView
android:id="@+id/GifImageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/btnNextScreen"
android:orientation="vertical">
<CheckBox
android:id="@+id/cbk1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CickABle CheckBox" />
</LinearLayout>
<Button
android:id="@+id/btnNextScreen"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:text="NEXT SCREEN" />
</RelativeLayout>