当我进行CAST时,ListView无法正确显示

时间:2018-02-07 15:01:16

标签: android android-layout listview android-arrayadapter google-cast

我在应用中有一个模块可以将一些内容转换为chrome cast。我在演员表上显示的布局有一个dinamic列表视图,我在其中放置了一些数据。

问题是listView不尊重其layout rows并且未正确显示(行中视图之间的大小和间距不正确),但其他要素确实如此。

我手机上的'普通'activities也使用listviews显示完全相同的数据并且工作正常。

有关为什么效果不佳的任何想法?

以下是代码:

演员阵容:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.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="match_parent"
android:background="@color/white">

<android.support.constraint.ConstraintLayout
    android:id="@+id/blueLayout"
    android:layout_width="0dp"
    android:layout_height="100dp"
    android:background="@drawable/gradient_background"
    app:layout_constraintBottom_toTopOf="@+id/infoHeadLayout"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">


    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="51dp"
        android:layout_marginStart="64dp"
        android:layout_marginTop="16dp"
        android:letterSpacing="0.19"
        android:lineSpacingExtra="3sp"
        android:text="@string/b"
        android:textColor="#ffffff"
        android:textSize="27sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.0" />

</android.support.constraint.ConstraintLayout>

<android.support.constraint.ConstraintLayout
    android:id="@+id/infoHeadLayout"
    android:layout_width="0dp"
    android:layout_height="62dp"
    android:layout_marginBottom="354dp"
    android:visibility="visible"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/blueLayout">

    <TextView
        android:id="@+id/nameText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="23dp"
        android:layout_marginEnd="826dp"

        android:layout_marginStart="32dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/name"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/rankText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="23dp"
        android:layout_marginEnd="719dp"
        android:layout_marginStart="75dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/rank"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/nameText"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/priceText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="23dp"
        android:layout_marginEnd="610dp"
        android:layout_marginStart="75dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/price"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/rankText"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/changeText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="23dp"
        android:layout_marginEnd="449dp"
        android:layout_marginStart="75dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/change"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/priceText"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/mText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="23dp"
        android:layout_marginEnd="300dp"
        android:layout_marginStart="75dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/market_cap"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/changeText"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/supplyText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:layout_marginEnd="181dp"
        android:layout_marginStart="75dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/supply"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/mText"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/textView10"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="23dp"
        android:layout_marginEnd="35dp"
        android:layout_marginStart="75dp"
        android:layout_marginTop="23dp"
        android:letterSpacing="0.09"
        android:lineSpacingExtra="10sp"
        android:text="@string/volume_24_hr"
        android:textColor="#000000"
        android:textSize="12sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/supplyText"
        app:layout_constraintTop_toTopOf="parent" />


</android.support.constraint.ConstraintLayout>

<android.support.constraint.ConstraintLayout
    android:id="@+id/contentRemoteLayout"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/infoHeadLayout">

    <ListView
        android:id="@+id/dataList"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>

</android.support.constraint.ConstraintLayout>

listView的行具有与infoHead constraintLayout

完全相同的布局

1 个答案:

答案 0 :(得分:1)

根据您的编写,我猜您已为适配器定义了行布局,并且每行的所有数据都在ConstraintLayout内。我找到了将约束布局更改为相对布局的解决方案。