Wie erhöht man die ScrollView-Höhe in Android?

8


Hallo Freunde,

Ich verwende GridView in einem ScrollView für die Anzeige von Bildern. In der GridView habe ich 16 Bilder, die dynamisch hinzugefügt wurden, aber die ScrollView zeigt nicht alle 16 Bilder an (siehe Screenshot).

Ich möchte, dass ScrollView das ganze GridView anzeigt, weiß jemand, wie ich das beheben kann?

Danke allen.

XML-Datei:

%Vor%     
sivaraj 09.09.2010, 09:07
quelle

5 Antworten

32

Verwenden Sie das Attribut android:fillViewport="true" im XML-Layout oder verwenden Sie die Methode setFillViewport(true) im Java-Code.

Sehen Sie sich die ScrollView-Dokumentation

an     
Vikas Patidar 08.02.2011 13:21
quelle
4

Ich hatte ein ähnliches Problem, bei dem ich einen Scrollview unter einer festen Navigationsleiste auf einem AbsoluteLayout hatte.

Ich setze die scrollview-Höhe auf die Höhe meines Bildschirms abzüglich der Höhe der navbar. Mein Bildschirm war 480dp hoch und die Navbar war 47dp hoch, also habe ich im xml-Layout die scrollview height auf 433dp gesetzt und den oberen Rand des scrollview mit einem Y-Offset unterhalb der Navbar verschoben.

%Vor%

Fügen Sie die folgenden Importe hinzu:

%Vor%

Damit es für mehrere Bildschirme funktioniert, habe ich dies onCreate für die Aktivität hinzugefügt:

%Vor%

Mit Hilfe dieser Hilfsfunktion erhalten Sie die Bildschirmhöhe:

%Vor%     
birdman 17.04.2013 05:47
quelle
3

Sie sollten GridView nicht in ScrollView einfügen. Informationen zum Verständnis von GridView finden Sie in der GridView-API .

Gemäß der Definition zeigt GridView die Elemente in einem zweidimensionalen scrollbaren Raster an. Wenn Sie also in ScrollView eine scrollbare Komponente hinzufügen, ist das Verhalten nicht wie erwartet. Da wir ListView nicht innerhalb von ScrollView hinzufügen können, können und sollten wir GridView nicht innerhalb von ScrollView hinzufügen.

    
MobDev 11.04.2013 11:23
quelle
0

Wenn der untere Teil von layout & amp; Der obere Teil des Layout-Gewichtes ist 0, dann setzen Sie die Scroll-Ansichten auf 1 und verwenden layout_height="match_parent" .

    
FabianCook 18.05.2012 11:05
quelle
0

Laut mir muss die Bildlaufansicht für die Grid-Ansicht nicht hinzugefügt werden. In Android wird die Bildlaufansicht automatisch hinzugefügt, wenn dies erforderlich ist.

    
Rohit 26.11.2012 11:03
quelle

Tags und Links