Android ConstraintLayout Fields do not work correctly

As you can see in the figure, the viewport is displayed at the current position, but the content is missing. Representations of the text, as well as representations of images are displayed as if there were no fields. When I launch the application, they also do not display properly (second image). I do not know what could have caused it. Editor Preview Live demo

EDIT: I forgot to include my xml:

<?xml version="1.0" encoding="utf-8"?> <com.example.android.stundenplanexample.dynamic_recyclerview.ExpandingCardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_width="match_parent" android:layout_height="wrap_content" card_view:cardCornerRadius="2dp" card_view:cardElevation="2dp" android:layout_margin="12dp"> <android.support.constraint.ConstraintLayout android:id="@+id/constraint" android:layout_width="match_parent" android:layout_height="wrap_content"> <ImageView android:layout_margin="8dp" android:layout_width="24dp" android:layout_height="24dp" android:layout_weight="0" android:src="@drawable/ic_expand_more_black_24dp" android:id="@+id/card_expand_toggle" tools:ignore="ContentDescription" android:layout_marginTop="16dp" card_view:layout_constraintTop_toTopOf="parent" card_view:layout_constraintRight_toRightOf="parent" android:layout_marginEnd="24dp" /> <TextView android:layout_margin="8dp" android:layout_weight="1" android:textAppearance="@android:style/TextAppearance.Material.Medium" android:textColor="?android:attr/textColorPrimary" android:layout_width="42dp" android:layout_height="wrap_content" android:text="@string/card_expand_string" android:id="@+id/textView3" card_view:layout_constraintTop_toTopOf="parent" android:layout_marginStart="16dp" card_view:layout_constraintLeft_toLeftOf="parent" android:layout_marginTop="16dp" /> <TextView android:layout_height="wrap_content" android:id="@+id/extra_information" android:layout_width="wrap_content" tools:text="ToleToleToleInfo" card_view:layout_constraintLeft_toLeftOf="@+id/textView3" android:layout_marginTop="8dp" card_view:layout_constraintTop_toBottomOf="@+id/textView3" card_view:layout_constraintBottom_toBottomOf="parent" android:layout_marginBottom="16dp" /> </android.support.constraint.ConstraintLayout> </com.example.android.stundenplanexample.dynamic_recyclerview.ExpandingCardView> 
+5
source share
1 answer

I see one specific problem and one potential problem.

A specific issue is that your textView3 points to these attributes:

 android:layout_margin="8dp" android:layout_marginTop="16dp" android:layout_marginStart="16dp" 

This does not set the top / start 16dp, and end / bottom - 8dp. This simply ignores the marginTop and marginStart .

The potential problem is what you specify

 android:layout_marginStart="16dp" 

but also do not specify marginLeft . If you want to support pre-API 17 devices, you need to specify both marginStart and marginLeft (provided that you remove the margin attribute).

+1
source

Source: https://habr.com/ru/post/1270763/


All Articles