Dans ma mise en page J'ai un TextView
à l'intérieur d'un RelativeLayout
comme ci-dessous:Modification des marges d'un textView lors de la liaison de la vue
<?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"
android:layout_width="match_parent"
android:layout_height="80dp"
android:orientation="horizontal">
<TextView
android:id="@+id/textView17"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="70dp"
android:layout_marginStart="70dp"
android:layout_marginTop="12dp"
android:layout_toLeftOf="@+id/imageButton2"
android:layout_toStartOf="@+id/imageButton2"
android:text="TextView"
android:textColor="@android:color/black"
android:textSize="24sp"
android:textStyle="bold" />
Les left margins
sont explicitement définis 70dp
dans ce cas. Cependant, je voudrais diminuer conditionnellement le left margin
à 30dp
ou plus. Ma tentative de le faire est ici:
@Override
public void onBindItemViewHolder(RecyclerView.ViewHolder holder, int position) {
final Material m = ...
ViewHolder h = (ViewHolder) holder;
h.checkedImageview.setVisibility(View.GONE);
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) h.titleTextview.getLayoutParams();
layoutParams.setMargins(
20,
layoutParams.topMargin,
layoutParams.rightMargin,
layoutParams.bottomMargin
);
h.titleTextview.setLayoutParams(layoutParams);
^^ Cependant, ce qui est sans effet du tout. Si je modifie les valeurs dans la mise en page XML , cela fonctionnera-t-il sans problème? Qu'est-ce que je fais mal? J'utilise la bibliothèque SectionedRecyclerViewAdapterRecyclerView
, si cela est important.