Android中ScrollView只能添加一个子控件
2904 点击·0 回帖
![]() | ![]() | |
![]() | 有下面一段代码 [html] <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:layout_width="fill_parent" Android:layout_height="fill_parent" Android:orientation="vertical" > <ScrollView Android:layout_width="fill_parent" Android:layout_height="fill_parent" > <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> </ScrollView> </LinearLayout> <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:layout_width="fill_parent" Android:layout_height="fill_parent" Android:orientation="vertical" > <ScrollView Android:layout_width="fill_parent" Android:layout_height="fill_parent" > <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> </ScrollView> </LinearLayout>一个ScrollView里面添加了三个Button,也许你认为没有什么问题,那么我们运行一下看看 出现了一个异常 ![]() 很明显,异常告诉我们ScrollView can host only one direct child 既然说只能容纳一个直接的子控件,那么我们就可以容纳多个间接的子控件,直接在这些子控件外面再套一层LinearLayout就OK了 [html] <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:layout_width="fill_parent" Android:layout_height="fill_parent" Android:orientation="vertical" > <ScrollView Android:layout_width="fill_parent" Android:layout_height="fill_parent" > <LinearLayout Android:layout_width="fill_parent" Android:layout_height="fill_parent" Android:orientation="vertical" > <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> <Button Android:layout_width="fill_parent" Android:layout_height="wrap_content" /> </LinearLayout> </ScrollView> </LinearLayout> | |
![]() | ![]() |