Может кто-нибудь объяснить, почему я не могу добавить дополнительную кнопку к этому ScrollView?

1

Это не имеет никакого смысла. У меня есть код, который имеет простой LinearLayout, и внутри него есть TextView и ScrollView, а внутри ScrollView есть кнопка. Ну, когда я добавляю вторую кнопку, я получаю сообщение о том, что ScrollView может иметь только один ребенок. Является ли Button признанным другим ребенком??? Прошу прощения за мою глупость, если это действительно просто. Если кто-то может помочь СПАСИБО!

<?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:duplicateParentState="false"
android:fadeScrollbars="true"
android:gravity="center"
android:isScrollContainer="true"
android:orientation="vertical"
android:scrollbars="vertical">
<TextView 
    android:text="Select category:"
    android:textStyle="italic"
    android:textColor="#000000"
    android:textSize="20dp"
    android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

<ScrollView
    android:id="@+id/ScrollView01"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:fadingEdgeLength="100dp">

        <Button
            android:id="@+id/Food"
            android:layout_width="175dp"
            android:layout_height="65dp"
            android:layout_gravity="center"
            android:gravity="center"
            android:background="@drawable/blackbutton"
            android:text="Food"
            android:textColor="#ffffff" />
        <Button
            android:id="@+id/Clothing"
            android:layout_width="175dp"
            android:layout_height="65dp"
            android:layout_gravity="center"
            android:gravity="center"
            android:background="@drawable/blackbutton"
            android:text="Clothing"
            android:textColor="#ffffff" />  
</ScrollView>
</LinearLayout>
  • 0
    2 Button - 2 ребенка
Теги:
button
scrollview

3 ответа

0
Лучший ответ

ScrollView должен иметь 1 ребенка. Поэтому поместите две кнопки внутри макета.

2

Ваш ответ буквально находится в документации ScrollView:

ScrollView - это FrameLayout, что означает, что вы должны поместить в него одного ребенка, содержащего все содержимое для прокрутки; этот ребенок сам может быть менеджером компоновки со сложной иерархией объектов. Ребенок, который часто используется, представляет собой LinearLayout в вертикальной ориентации, представляя вертикальный массив элементов верхнего уровня, которые пользователь может прокручивать.

Другими словами: вам нужно поместить две кнопки в макет по вашему выбору, который в свою очередь является единственным дочерним элементом ScrollView.

0

поместите эти две кнопки внутри линейного или относительного макета... и поместите этот макет внутри прокрутки. это должно решить проблему.

В представлении прокрутки может быть только один дочерний элемент управления...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню