Ich füge dynamisch Elemente zu einem ListView
hinzu und möchte alle Elemente immer sichtbar machen, ohne zu scrollen.
Layoutcode:
%Vor%alter OnCreate () Funktionscode:
%Vor%Wenn ich Code verschiebe, der meinen Spinner mit Datenbankdaten füllt, gibt er mir immer eine NullPointerException zurück, da sie in meinem Layout nicht gefunden wird. Also muss ich es hier behalten und die Lösung, die addHeaderView () zu meiner ListView hinzufügt, scheint in Ordnung zu sein, aber ich habe eine andere NullPointerException in Bezug auf mein Kopflayout:
%Vor% Wenn ich Sie gut verstehe, brauchen Sie nur einige weitere Ansichten, die zusammen mit Ihrer Listenansicht scrollbar sind. Der beste Weg, dies zu implementieren, ist addHeaderView()
und addFooterView()
auf Ihrem ListView()
.
BEARBEITEN:
Es sollte so gehen, denke ich:
%Vor%Ich schreibe aus dem Gedächtnis und habe es nicht getestet, aber ich denke, es sollte funktionieren. Probieren Sie es aus, wenn Sie einen Moment haben.
Eine Lösung besteht darin, die ListView-Höhe so groß wie den Inhalt zu machen. Sie können diesen Effekt mit der folgenden Klasse anstelle von ListView erreichen:
%Vor%Wie auch immer, es ist eine schlechte Idee, ein ListView in einer ScrollView zu haben, also würde ich die anderen Elemente in Ihrem Layout als Kopf- / Fußzeile mit den Methoden addHeaderView () und addFooterView () hinzufügen, wie MichałK darauf hingewiesen hat. p>
Hier finden Sie ein Beispiel für die Verwendung dieser Methoden:
Machen Sie Ihre ListView
Höhe größer als Ihre Inhaltsgröße .
Sagen Sie, wenn Sie 5 listitems haben, jeweils 20sp height Listenansicht height auf 100 oder größer setzen Auf diese Weise können Sie es erreichen
Tags und Links android android-layout listview