Ich bin neu in der Android-Entwicklung und habe folgendes Problem.
Ich muss FrameLayout
innerhalb von ScrollView
verwenden, um es scrollbar zu machen. Ich schrieb dies
Aber das funktioniert nicht. Ich habe versucht in RelativeLayout
und es hat funktioniert, aber ich muss für FrameLayout
verwenden.
Irgendwelche Ideen?
Ich habe viele Varianten versucht, um dieses Problem zu lösen, einschließlich der Antworten hier, aber niemand war hilfreich. ScrollView
umschließt immer FrameLayout
, aber alles ist normal mit RelativeLayout
, LinearLayout
...
Ich habe eine Lösung gefunden - um die minimale Höhe von FrameLayout
zu setzen. Sie können die dynamische Mindesthöhe nach setMinimumHeight()
method einstellen.
android: fillViewport="true" löst dieses Problem.
android: fillViewport, Definiert, ob der scrollview seinen Inhalt erweitern soll, um das Ansichtsfenster zu füllen.
%Vor%Ihr XML-Beispiel ist ziemlich gut, das einzige, was ich sehen kann, ist: Wenn das ScrollLayout-Elternteil größer als 500 dpi ist, wird es nicht scrollen.
Tatsächlich wird der Bildlauf nur verwendet, wenn der Inhalt größer ist als der Bildlauf.
Hier setzen Sie Ihre Inhaltshöhe auf 500dip und scrollen Sie zu "match_parent" Wenn das übergeordnete Element dieser Bildlaufansicht den gesamten Bildschirm verwendet, z. B. auf einem 800-dpi-Bildschirm (Höhe),
= & gt; Die Schriftrolle wird einfach nicht benötigt.
Setzen Sie layout_height auf "wrap_content" in Ihrem FrameLayout
%Vor%Es wird geblättert, wenn das FrameLayout höher als der Bildschirmrand ist. Oder wenn Sie die feste Höhe des scrollbaren Bereichs festlegen möchten, stellen Sie die Höhe in ScrollView auf 500 dpi ein. Es hängt davon ab, was Sie wollen, aber legen Sie niemals die feste Höhe für ein untergeordnetes ScrollView-Kind fest. Die Größe des ScrollView-Kindes sollte immer wrap_content sein.
%Vor%