/ / dynamisch erhöhen und verringern das relative Layout - Android, Android-Recyclerview, Relative Layout

dynamisch erhöhen und verringern das relative Layout - Android, Android-Recyclerview, Relative Layout

Den relativen Wert dynamisch erhöhen und verringernLayout, ich möchte die Größe des relativen Layout verkleinern, wenn Recycler Ansicht Popup von der Unterseite des Bildschirms und nach der Verwendung agian der Bildschirm wird in die normale Größe (in Recycler anzeigen im gesungenen Symbole auf relative Ansicht setzen)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_weight="1">

////////tool bar
<include layout="@layout/toolbar" />


<RelativeLayout
android:id="@+id/rel1"
android:layout_width="wrap_content"
android:layout_height="400dp"
android:layout_below="@+id/toolbar"
android:layout_weight="1">

<com.cmlibrary.CircleMenu
android:id="@+id/circle_menu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="180dp"
android:layout_marginTop="180dp"

/>
</RelativeLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="300dp"
android:layout_below="@+id/rel1"
android:padding="5dp" />
</RelativeLayout>

Antworten:

0 für die Antwort № 1

Besser ist es, die Sichtbarkeit von Ansichten nach Bedarf ein- und auszublenden. Aber wenn Sie die Größe erhöhen und verringern möchten, dann hilft Ihnen der folgende Code.

 private void layoutParams() {
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) relativeLayout.getLayoutParams();
ViewGroup.LayoutParams params = recyclerView.getLayoutParams();
/* When recyclerView shows*/
layoutParams.height = layoutParams.height - params.height;
relativeLayout.setLayoutParams(layoutParams);

/* When recyclerView hidden*/
layoutParams.height = RelativeLayout.LayoutParams.MATCH_PARENT;
relativeLayout.setLayoutParams(layoutParams);
}

Hoffe, das wird helfen.