Я получаю корневое представление (в моем случае это RelativeLayout), используя следующий код:
final ViewGroup viewGroup = (ViewGroup) ((ViewGroup) this
.findViewById(android.R.id.content)).getChildAt(0);
Источник: Получить корневой вид текущей активности
Теперь я хочу установить размер и гравитацию макета корневого представления. Но я не знаю тип макета его родителя
Приведенный ниже код работает, когда представление, для которого я хочу установить параметры макета, находится внутри LinearLayout.
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
params.weight = 1.0f;
params.gravity = Gravity.TOP;
button.setLayoutParams(params);
Источник: Как программно установить layout_gravity?