Подтвердить что ты не робот

PercentRelativeLayout, как установить высоту программно

Я использую PercentRelativeLayout из пакета поддержки андроидных процентов. это то, что у меня есть в моем макете.

<android.support.percent.PercentRelativeLayout
    android:id="@+id/view_parent"
    app:layout_heightPercent="68%" android:visibility="invisible"
    android:layout_width="match_parent"
    android:background="@color/mountain_meadow" android:layout_alignParentTop="true"
    android:layout_height="wrap_content">


    <View android:id="@+id/view_child" android:layout_width="match_parent" app:layout_heightPercent="30%"
        android:layout_alignParentBottom="true"
        />

</android.support.percent.PercentRelativeLayout>

Я хочу программно изменить высоту view_child. Как это сделать с помощью PercentRelativeLayout.LayoutParams или любым другим способом.

4b9b3361

Ответ 1

Вы хотите установить новое значение процента? Если да, вам необходимо:

View view = findViewById(R.id.view_child);
PercentRelativeLayout.LayoutParams params = (PercentRelativeLayout.LayoutParams) view.getLayoutParams();
// This will currently return null, if it was not constructed from XML.
PercentLayoutHelper.PercentLayoutInfo info = params.getPercentLayoutInfo();
info.heightPercent = 0.60f;
view.requestLayout();