首页 > 解决方案 > Swtich app:drawableTopCompat="@drawable/nullbadge" 基于查询结果?

问题描述

我编写了一个 php 多查询来输出一个 1 和 0 的 3x3 数组。我有一个表格布局,包含 3x3 的 app:drawableTopCompat="@drawable/nullbadge" 作为文本视图。Null 徽章有一个同等大小的可绘制徽章,我想根据查询进行缝合。例如,如果用户完成了 X,则 xml 应更改为 app:drawableTopCompat="@drawable/earnedbadge"。我在使用 Java 时遇到问题。

    <?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:backgroundTint="#000000"
    tools:context=".ui.viewBadges.BadgesFragment">
    <?xml version="1.0" encoding="utf-8"?>

    <TableLayout
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:backgroundTint="#000000"
        android:orientation="vertical"
        tools:context=".ui.viewBadges.BadgesFragment"
        android:layout_gravity="clip_horizontal|center|clip_vertical|top"
        android:scaleType="fitCenter"
        tools:ignore="UselessParent">

<!--        each row consist of a NULL badge on top of text view-->
<!--        NULL badge will change dynamically to earned badge dependent -->
<!--        per badge query value either 1 or 0-->
        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/textView15"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/Level1Badges"
                android:gravity="center_horizontal"
                android:textColor="#3C0C73"/>

        </TableRow>

        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/Badge1"
                android:layout_width="129dp"
                android:layout_height="match_parent"
                android:gravity="center_horizontal"
                android:text="@string/Level1.1"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />

            <TextView
                android:id="@+id/Badge2"
                android:layout_width="115dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="@string/Level1.2"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />

            <TextView
                android:id="@+id/Badge3"
                android:layout_width="115dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="@string/Level1.3"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />
        </TableRow>



        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            >

            <TextView
                android:id="@+id/textView21"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/Level2Badges"
                android:textColor="#3C0C73"
                android:gravity="center_horizontal"
                />
        </TableRow>

        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/Badge4"
                android:layout_width="129dp"
                android:layout_height="match_parent"
                android:gravity="center_horizontal"
                android:text="@string/Level2.1"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />

            <TextView
                android:id="@+id/Badge5"
                android:layout_width="115dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="@string/Level2.2"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />

            <TextView
                android:id="@+id/Badge6"
                android:layout_width="115dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="@string/Level2.3"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />
        </TableRow>


        <TableRow
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/textView23"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:drawablePadding="-40dp"
                android:text="@string/Level3Badges"
                android:textColor="#3C0C73"
                android:gravity="center_horizontal"
                />
        </TableRow>

        <TableRow
            android:layout_width="376dp"
            android:layout_height="256dp">

            <TextView
                android:id="@+id/Badge7"
                android:layout_width="129dp"
                android:layout_height="match_parent"
                android:gravity="center_horizontal"
                android:text="@string/Level3.1"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />

            <TextView
                android:id="@+id/Badge8"
                android:layout_width="115dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="@string/Level3.2"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                />

            <TextView
                android:id="@+id/Badge9"
                android:layout_width="115dp"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:text="@string/Level3.3"
                app:drawableTopCompat="@drawable/nullbadge"
                android:drawablePadding="-40dp"
                android:scaleType="fitCenter"
                android:adjustViewBounds="true"
                />
        </TableRow>
    </TableLayout>
</FrameLayout>

标签: javaphpjsonxmlandroid-studio

解决方案


推荐阅读