2016-04-02 9 views
0

Ich bin mir bewusst, dass es eine Menge Fragen mit einer ähnlichen Frage gibt. Die meisten von ihnen befassen sich jedoch mit der horizontalen Ausrichtung, während mein Problem mit der vertikalen Ausrichtung besteht. Und ich habe ein paar ausprobiert, aber sie waren nicht hilfreich.Gewicht Eigenschaft auf Android lineares Layout funktioniert nicht ordnungsgemäß programmgesteuert

Ok, so auf das Problem. Ich habe Probleme mit der vertikalen Ausrichtung des linearen Layouts. Ich habe dies so weit gekommen:

enter image description here

Mein Layout Parameter hierfür ist wie folgt:

LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); 
     lparams.weight = 1; 
// And then simply adding this Layout param to all the widgets 

Allerdings, wenn ich die Höhe Eigenschaft auf 0 gesetzt, ich habe nichts bekommen. Mein Verständnis ist, dass ich immer noch die gleiche Ausgabe bekommen sollte, da sie allen dieselbe Höhe basierend auf der Gewichtungseigenschaft zuweisen sollte. Kann jemand bitte helfen?

+0

Sie können versuchen, 'ViewGroup.LayoutParams' in' LinearLayout.LayoutParams' zu ändern. –

+0

können Sie das nicht mit XML? – Ancee

Antwort

1

Ich habe endlich das Problem herausgefunden. Das Problem lag nicht in meinem Verständnis. Mein Verständnis ist richtig. Beim Einstellen der Inhaltsansicht habe ich jedoch dieselben LayoutParams übergeben, die ich für Widgets verwendet habe. Wenn ich die Höhe auf 0 setze, würde alles die Höhe von allem auf 0 setzen. Um es zu umgehen, musste ich nur ein neues LayoutParam erstellen und dieses mit der Inhaltsansicht übergeben.

Verwandte Themen