Как настроить HorizontalScrollView в Android? - PullRequest
0 голосов
/ 03 декабря 2011

Я новичок в Android, но я сделал учебник блокнота. Сейчас я пытаюсь написать свой собственный макет. Окончательный макет будет таким на одной странице:

1-я строка: [------ строка поиска -----] [кнопка]

2-я строка: [текстовая вкладка] [текстовая вкладка] [текстовая вкладка] <- щелкните один из них, чтобы изменить содержимое 3-й строки </p>

3-й ряд: [содержимое для заполнения остальной высоты]

... и когда пользователь прокручивает страницу влево или вправо, отображается другой макет / страница.

Итак, я начал использовать графический редактор Eclipse для нового XML-файла макета Android. Я перетащил текстовое поле на холст, а затем увеличил ширину, как на рисунке выше. Затем я добавил кнопку в конце, чтобы завершить первый ряд.

Теперь, когда я пытаюсь добавить что-нибудь ниже, это не работает. Поэтому я перешел на XML-представление. Я скопировал и вставил LinearLayout, чтобы я мог отредактировать его для создания 2-го ряда.

Теперь я получаю сообщение об ошибке: HorizontalScrollView может содержать только один прямой дочерний элемент

Хорошо, я понимаю, что представление горизонтальной прокрутки должно содержать только 1 LinearLayout, но тогда какова правильная структура для настройки этого макета?

<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView 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">
    <EditText
        android:id="@+id/editText1"
        android:layout_width="1130dp"
        android:layout_height="72dp">
        <requestFocus/>
    </EditText>
    <Button
        android:id="@+id/button1"
        android:layout_width="152dp"
        android:layout_height="72dp"
        android:text="Button"/>
</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/editText1"
        android:layout_width="1130dp"
        android:layout_height="72dp">
        <requestFocus/>
    </EditText>
    <Button
        android:id="@+id/button1"
        android:layout_width="152dp"
        android:layout_height="72dp"
        android:text="Button"/>
</LinearLayout>

</HorizontalScrollView>

1 Ответ

1 голос
/ 03 декабря 2011
<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView 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">

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/editText1"
        android:layout_width="1130dp"
        android:layout_height="72dp">
        <requestFocus/>
    </EditText>
    <Button
        android:id="@+id/button1"
        android:layout_width="152dp"
        android:layout_height="72dp"
        android:text="Button"/>
</LinearLayout>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/editText1"
        android:layout_width="1130dp"
        android:layout_height="72dp">
        <requestFocus/>
    </EditText>
    <Button
        android:id="@+id/button1"
        android:layout_width="152dp"
        android:layout_height="72dp"
        android:text="Button"/>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...