Динамически добавленная запись RecyclerView без автоматического изменения размера - PullRequest
0 голосов
/ 28 февраля 2020

Так что я пытался понять это уже довольно давно и не могу заставить это работать. У меня есть RecyclerView, к которому после нажатия кнопки добавляется дочерний элемент (на данный момент это тестовый пример). Как вы увидите из приведенного ниже кода, при вызове onBindView текст изменяется. Однако, как говорится в заголовке, текст не изменяется автоматически для заполнения соответствующего поля.

Как мне это сделать?

RecyclerViewEntry. xml:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 
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="wrap_content"
                                               android:id="@+id/ma_rv_ple_layout_root"
                                          android:background="@drawable/background_border_rc"
                                               android:padding="15dp"
                                               android:clickable="true" 
                                               android:focusable="true"
                                               android:layout_margin="5dp"
>
<TextView
        android:text="@string/ma_rv_ple_project_label"
        android:layout_width="0dp"
        android:layout_height="0dp" android:id="@+id/am_rv_ple_project_title_label"
        app:layout_constraintEnd_toEndOf="parent" 
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        android:textAppearance="@style/TextAppearance.AppCompat.Display1"
        android:gravity="center"
        app:layout_constraintDimensionRatio="1"
        android:breakStrategy="balanced"
        app:autoSizeTextType="uniform"
        android:maxLines="1"
/>
</androidx.constraintlayout.widget.ConstraintLayout>

ProjectListAdapter. java

@Override
    public void onBindViewHolder(@NonNull ProjectListAdapter.ViewHolder holder, int position) {
    // TODO: Create and build our ViewHolder.
    String entry = ProjectManager.getInstance().getProjectItem(position).getProjectName();

    holder.getProjectNameTextView().setText(entry);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...