アクティビティレイアウトのすべての周りにスクロールビューを追加しようとしましたが、1つのものの周りにしか配置できないというエラーが発生しました。
私のアクティビティには、タイトルテキストビュー、画像、説明テキストビューがあり、説明が長く、画面の端より下にあるため、説明全体を読むことができません。どうすればwhoelをスクロール可能にすることができますか?
私のxmlは次のようになります:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical" >
<TextView
Android:id="@+id/beerTitle"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:ems="10"
Android:textSize="40sp"
Android:textStyle = "bold"
>
</TextView>
<ImageView Android:id="@+id/image"
Android:layout_height="wrap_content"
Android:layout_width="fill_parent"
Android:layout_margin="10dip"/>
<Button
Android:id="@+id/buttonBrewery"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="" />
<Button
Android:id="@+id/buttonStyle"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="" />
<TextView
Android:id="@+id/beerDEscriptionTitle"
Android:textStyle = "bold"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:ems="10"
Android:textSize="20sp"
Android:text="Description"
></TextView>
<TextView
Android:id="@+id/beerDescription"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:ems="10"
Android:textSize="15sp"
></TextView>
</LinearLayout>
これを試して:
<?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" >
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical" >
<!-- TextView and other stuff -->
</LinearLayout>
</ScrollView>
LinearLayout
をラップします(高さはwrap_content
)with SrollView
(高さはfill_parent
)。
「1つのこと」はあなたのLinearLayout
です。それをScrollView
でラップするだけで、アクティビティ全体のレイアウトがカプセル化されます。
さらに、1つの要素だけをScrollView
でラップしたい場合は、その要素を線形または相対レイアウトなどの独自のレイアウトに配置するだけで、それがScrollView
の1つの要素になります。
これを使うだけ
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/scrollview"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content">
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical" >
<TextView
Android:id="@+id/beerTitle"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:ems="10"
Android:textSize="40sp"
Android:textStyle = "bold"
>
</TextView>
<ImageView Android:id="@+id/image"
Android:layout_height="wrap_content"
Android:layout_width="fill_parent"
Android:layout_margin="10dip"/>
<Button
Android:id="@+id/buttonBrewery"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="" />
<Button
Android:id="@+id/buttonStyle"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="" />
<TextView
Android:id="@+id/beerDEscriptionTitle"
Android:textStyle = "bold"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:ems="10"
Android:textSize="20sp"
Android:text="Description"
></TextView>
<TextView
Android:id="@+id/beerDescription"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:ems="10"
Android:textSize="15sp"
></TextView>
</LinearLayout>
</ScrollView>