Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

LayoutInflating without result

I’m trying to a add for each row in the cursor one instance of my ConstraintLayout and its childs to the linear layout (named verticalLayout), but there is no effect except closing the activity, no Exception.
It’s working fine for one instance, but with at least 2 its broken.
Thanks for your help

The Code for adding it:

 private void addRows(){
        PersistenceManager.init(getApplicationContext());
        Cursor cursor = PersistenceManager.getInstance().getCursor();
        for(cursor.moveToFirst(); !cursor.isAfterLast();cursor.moveToLast()){
            ConstraintLayout child = (ConstraintLayout) getLayoutInflater().inflate(R.layout.track, null);
            linearLayout.addView(child);
        }
    }

And track.xml:

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

<?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:id="@+id/relativeLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

    <TextView
        android:id="@+id/nameField"
        android:layout_width="55dp"
        android:layout_height="18dp"
        android:layout_marginStart="16dp"
        android:layout_marginTop="8dp"
        android:text="name"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/distanceTv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="distance"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.125"
        app:layout_constraintStart_toEndOf="@+id/nameField"
        tools:ignore="MissingConstraints"
        tools:layout_editor_absoluteY="11dp" />

    <TextView
        android:id="@+id/upTv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="36dp"
        android:layout_marginTop="16dp"
        android:text="up"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/nameField" />

    <TextView
        android:id="@+id/downTv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="36dp"
        android:layout_marginTop="12dp"
        android:text="down"
        app:layout_constraintStart_toEndOf="@+id/upTv"
        app:layout_constraintTop_toBottomOf="@+id/distanceTv" />

    <TextView
        android:id="@+id/dateTv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="12dp"
        android:text="date"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.171"
        app:layout_constraintStart_toEndOf="@+id/downTv"
        app:layout_constraintTop_toBottomOf="@+id/distanceTv" />

</androidx.constraintlayout.widget.ConstraintLayout>

>Solution :

for(cursor.moveToFirst(); !cursor.isAfterLast();cursor.moveToLast())

This loop never terminates.

Change the moveToLast() to moveToNext() so that the cursor can reach "after last" state.

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading