Tengo este código en mi aplicación:
LinearLayout.LayoutParams params =
new LinearLayout.LayoutParams(WRAP_CONTENT, WRAP_CONTENT);
y solo quiero establecer la orientación del LinearLayout en vertical. El equivalente en XML es:
android:orientation="vertical"
¿Cómo puedo hacerlo en el código, sin XML?
myLayout.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
Necesita instanciar LinearLayout. Después de eso, puede llamar a setOrientation ()
LinearLayout myLayout = ...; myLayout.setLayoutParams(new LayoutParams(LinearLayout.WRAP_CONTENT, LinearLayout.WRAP_CONTENT); myLayout.setOrientation(LinearLayout.VERTICAL);
Eso debería hacer el trabajo :)
Para obtener más información, consulte la API de Android .
fuente
Una muestra de trabajo a continuación (es LayoutParams.WRAP_CONTENT, NO LinearLayout.WRAP_CONTENT)
myLayout.setOrientation(LinearLayout.VERTICAL); LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); myLayout.setLayoutParams(layoutParams);
fuente
En caso de que alguien más llegue aquí como yo buscando la respuesta para Xamarin, el equivalente es:
LinearLayout layout = /* ... */; layout.Orientation = Orientation.Vertical; layout.LayoutParameters = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MatchParent, LinearLayout.LayoutParams.WrapContent);
fuente
Simplemente use como sigue: -
LinearLayout mlayout = new LinearLayout(context); mlayout.setOrientation(2);
2 significa
Vertical
, 1 se usa parahorizontal
.fuente