我是android开发的初学者。我的问题是,每当我将滚动视图应用到我的Relativelayout
时,一切都在搞乱。任何人都可以请告诉我如何将滚动视图应用到我的应用程序和另一个问题,当我在纵向模式下打开我的应用程序,当我们将其更改为横向模式时,它将显示应用程序已意外停止强制关闭我猜它可能是因为我还没有在我的应用程序中使用滚动视图但是如果有人有任何解决方案,请告诉我。这是我的代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/ccc"
android:padding="30dp" >`enter code here`
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/hundred"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@drawable/tenshotrockets_back"
android:text=" " />
<Button
android:id="@+id/ultimate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:background="@drawable/ultimaterockate_back"
android:text=" " />
<Button
android:id="@+id/power"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:background="@drawable/powerrocket_back"
android:text=" " />
<Button
android:id="@+id/two"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:background="@drawable/twoshots_back"
android:text=" " />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@id/hundred"
android:text="hundred shots"
android:textColor="#ffffff" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@id/two"
android:text="two shots"
android:textColor="#ffffff" />
<TextView
android:id="@+id/textView8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@id/textView3"
android:layout_alignBottom="@id/textView3"
android:layout_alignParentRight="true"
android:text="ten shots"
android:textColor="#ffffff" />
<TextView
android:id="@+id/textView7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/power"
android:layout_below="@+id/power"
android:text="power rocket"
android:textColor="#ffffff" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView2"
android:layout_alignBottom="@+id/textView2"
android:layout_centerHorizontal="true"
android:text="ultimate rocket"
android:textColor="#ffffff" />
<Button
android:id="@+id/ten"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/music_blast"
android:layout_alignBottom="@+id/music_blast"
android:layout_alignLeft="@+id/textView8"
android:background="@drawable/threeshots_back"
android:text=" " />
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView8"
android:layout_alignBottom="@+id/textView8"
android:layout_alignLeft="@+id/ultimate"
android:text="musical blast"
android:textColor="#ffffff" />
<Button
android:id="@+id/music_blast"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView5"
android:layout_alignLeft="@+id/textView5"
android:background="@drawable/musical_blast"
android:text=" " />
<Button
android:id="@+id/music_rocket"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/Bottle_rock"
android:layout_alignBottom="@+id/Bottle_rock"
android:layout_alignRight="@+id/textView3"
android:background="@drawable/musicalrocket_back"
android:text=" " />
<TextView
android:id="@+id/textView9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/music_rocket"
android:layout_alignParentBottom="true"
android:text="musical"
android:textColor="#ffffff" />
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/Bottle_rock"
android:layout_alignParentBottom="true"
android:text="bottle rocket"
android:textColor="#ffffff" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/music_bank"
android:text="sound"
android:textColor="#ffffff" />
<Button
android:id="@+id/Bottle_rock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView6"
android:layout_alignLeft="@+id/textView5"
android:background="@drawable/musicalsimple_back"
android:text=" " />
<Button
android:id="@+id/music_bank"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/Bottle_rock"
android:layout_alignBottom="@+id/Bottle_rock"
android:layout_alignLeft="@+id/textView8"
android:background="@drawable/musicalsmall"
android:text=" " />
</RelativeLayout>
</ScrollView>
</RelativeLayout>
答案 0 :(得分:5)
您需要ScrollView中的 fillViewport XML属性。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="30dp" >
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true" > <!-- add this attribute -->
<RelativeLayout ...
</RelativeLayout>
</ScrollView>
</RelativeLayout>
对于方向更改时应用崩溃,请注意默认情况下,应用程序会在方向更改时重新启动活动(再次调用 onCreate )。
我猜这可能会扰乱你的程序流程,但由于你没有发布代码,我们无法真正评论它。
也许您想看一下可用的多个教程。