Ориентация макета в коде
у меня есть этот код в моем приложении:
LinearLayout.LayoutParams params =
new LinearLayout.LayoutParams(WRAP_CONTENT, WRAP_CONTENT);
и я просто хочу установить ориентацию LinearLayout по вертикали. Эквивалент в XML:
android:orientation="vertical"
Как я могу сделать это в коде, без XML?
6 ответов:
вы не можете изменить
LinearLayout
's ориентация с помощью егоLayoutParams
. Это можно сделать только с помощью
вы можете использовать вот так:
LinearLayout myll = (LinearLayout) findViewById(R.id.yourLinearLayout); myll.setLayoutParams(LinearLayout.WRAP_CONTENT, LinearLayout.WRAP_CONTENT); myll.setOrientation(LinearLayout.VERTICAL);
вам нужно создать экземпляр LinearLayout. После этого вы можете вызвать setOrientation ()
LinearLayout myLayout = ...; myLayout.setLayoutParams(new LayoutParams(LinearLayout.WRAP_CONTENT, LinearLayout.WRAP_CONTENT); myLayout.setOrientation(LinearLayout.VERTICAL);
Это должно сделать работу :)
для получения дополнительной информации проверьте Android API.
рабочий образец ниже (это LayoutParams.Wrap_content в качестве параметров, а не макетом.Wrap_content в качестве параметров)
myLayout.setOrientation(LinearLayout.VERTICAL); LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); myLayout.setLayoutParams(layoutParams);