I want to set aspect ratio for my FrameLayout
inside PercentRelativeLayout
programmatically.
I already tried in xml
, it's working:
<android.support.percent.PercentRelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="#000"
xmlns:android="http://schemas.android.com/apk/res/android">
<FrameLayout
app:layout_widthPercent="100%"
app:layout_aspectRatio="178%" //aspect ratio
android:orientation="vertical"
android:id="@+id/liveTV_frame"
android:layout_marginBottom="50dp"
android:layout_centerInParent="true"
android:background="@android:color/background_dark"
android:keepScreenOn="true">
</FrameLayout>
</android.support.percent.PercentRelativeLayout>
But I need to set it programmatically.
How can I do that?
PercentRelativeLayout layout = ...;
PercentRelativeLayout.LayoutParams layoutParams
= (PercentRelativeLayout.LayoutParams) layout.getLayoutParams();
layoutParams.getPercentLayoutInfo().aspectRatio = ...; // float value
layout.requestLayout();