Wie erstelle ich ein dynamisches Layout, das größer als der Bildschirm ist?

Ich möchte ein sich dynamisch erweiterndes Layout erstellen, das sich möglicherweise an den Eingaben des Benutzers orientiert. Zunächst habe ich ein Aktivitätslayout erstellt, mit dem Sie in beide Richtungen scrollen können (dies ist nicht meine Erfindung, ich habe die in beschriebene Idee verwendetein Kommentar zu einer anderen Frage mit einigen Verbesserungen):

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clipChildren="false"
    android:clipToPadding="false"
    tools:ignore="UselessParent" >

    <FrameLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clipChildren="false"
        android:clipToPadding="false" >

        <RelativeLayout
            android:id="@+id/content"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:clipChildren="false"
            android:clipToPadding="false" >

        </RelativeLayout>
    </FrameLayout>
</FrameLayout>

Dann habe ich unten ein einfaches UI-Layout, eine Textansicht und ein vertikales lineares Layout erstellt. Hier ist meine message_with_replies.xml:

<?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:clipChildren="false"
    android:clipToPadding="false"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/header"
        android:layout_width="300dp"
        android:layout_height="wrap_content" >

<!-- some text views and buttons here, 
    I've removed them to keep things simple,
    see the screenshot below -->

    </LinearLayout>

    <LinearLayout
        android:id="@+id/replies"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:orientation="vertical" >
    </LinearLayout>

</LinearLayout>

Beachten Sie den 10-Punkte-Rand imAntworten Layout und die Attribute zum Beschneiden.

So kann ich jetzt einen Artikel mit dem Layout message_with_replies aufblasen und dem hinzufügenInhalt Layout der Aktivität, blasen Sie dann ein anderes Element auf und fügen Sie es dem hinzuAntworten lineares Layout mit dem ersten Element usw., wodurch eine baumartige Hierarchie erstellt wird. Der gesamte Baum wird horizontal und vertikal angezeigt und gescrollt.

Es sieht jedoch so aus, als ob das Layout mit der Bildschirmgröße immer noch begrenzt ist. Ich habe zwei Probleme:

1) Die Elemente hinter dem rechten Rand sehen gut aus, erhalten jedoch keine Benutzereingaben. 2) Das Layout hinter der Unterkante ist durcheinander.

Hier ist der Screenshot. Von links nach rechts: 1) Alles sieht gut aus, 2) Hoppla, der Knopf ist am Rand, 3) Hoppla, der Boden ist durcheinander.

Sieht so aus, als hätte ich etwas Einfaches, aber Verborgenes verpasst. Wie bringe ich das Layout über die Bildschirmkanten hinaus zum Laufen?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage