选择后更改约束布局轮廓和颜色

Change constraint Layout outline and color after one selects it

提问人:hansh 提问时间:7/27/2023 更新时间:7/27/2023 访问量:19

问:

在android studio中,如果有人选择约束布局,我想更改它的轮廓。state_selected不起作用,表示按钮颜色和轮廓没有变化。

如果选择该特定布局,我想更改单选组内约束布局的颜色和轮廓,为此我创建了“custom_radio_selector”,但state_selected不起作用。我该怎么做才能纠正它?

custom_radio_selector--->

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected="false">
        <shape android:shape="rectangle">
            <solid android:color="@color/white" />
            <stroke android:width="2dp" android:color="?attr/colorPrimary" />
            <corners android:radius="30dp" />
        </shape>
    </item>

    <item android:state_selected="true">
        <shape android:shape="rectangle">
            <solid android:color="@color/LightPink" />
            <stroke android:width="2dp" android:color="?attr/colorPrimary" />
            <corners android:radius="30dp" />
        </shape>
    </item>
</selector>

XML 文件--->

<RadioGroup
        android:id="@+id/radioGroup"
        android:layout_width="match_parent"
        android:layout_height="429dp"
        android:layout_marginTop="32dp"
        android:weightSum="2"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.497"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/text">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:orientation="horizontal"
            android:padding="10dp"
            android:weightSum="2">

            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/selectLove"
                android:layout_width="212dp"
                android:layout_height="194dp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="10dp"
                android:layout_weight="1"
                android:background="@drawable/custom_radio_selector">

                <ImageView
                    android:id="@+id/imageView5"
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    android:layout_marginTop="30dp"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:srcCompat="@drawable/heart" />

                <TextView
                    android:id="@+id/interestLove"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Love"
                    android:textColor="#000000"
                    android:textSize="20sp"
                    android:textStyle="bold"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="@+id/imageView5"
                    app:layout_constraintStart_toStartOf="@+id/imageView5"
                    app:layout_constraintTop_toBottomOf="@+id/imageView5"
                    app:layout_constraintVertical_bias="0.492" />
            </androidx.constraintlayout.widget.ConstraintLayout>

            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/selectFriend"
                android:layout_width="212dp"
                android:layout_height="194dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="5dp"
                android:layout_weight="1"
                android:background="@drawable/custom_radio_selector">

                <ImageView
                    android:id="@+id/imageView7"
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    android:layout_marginTop="30dp"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:srcCompat="@drawable/friend" />

                <TextView
                    android:id="@+id/interestFriend"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Friends"
                    android:textColor="#000000"
                    android:textSize="20sp"
                    android:textStyle="bold"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toBottomOf="@+id/imageView7" />
            </androidx.constraintlayout.widget.ConstraintLayout>

        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:orientation="horizontal"
            android:padding="10dp"
            android:weightSum="2">

            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/selectFling"
                android:layout_width="212dp"
                android:layout_height="194dp"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="10dp"
                android:layout_weight="1"
                android:background="@drawable/custom_radio_selector">

                <ImageView
                    android:id="@+id/imageView8"
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    android:layout_marginTop="30dp"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:srcCompat="@drawable/fling" />

                <TextView
                    android:id="@+id/interestFling"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Fling"
                    android:textColor="#000000"
                    android:textSize="20sp"
                    android:textStyle="bold"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toBottomOf="@+id/imageView8" />

            </androidx.constraintlayout.widget.ConstraintLayout>

            <androidx.constraintlayout.widget.ConstraintLayout
                android:id="@+id/selectBusiness"
                android:layout_width="212dp"
                android:layout_height="194dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="5dp"
                android:layout_weight="1"
                android:background="@drawable/custom_radio_selector">

                <ImageView
                    android:id="@+id/imageView9"
                    android:layout_width="100dp"
                    android:layout_height="100dp"
                    android:layout_marginTop="30dp"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:srcCompat="@drawable/business" />

                <TextView
                    android:id="@+id/interestBusiness"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Business"
                    android:textColor="#000000"
                    android:textSize="20sp"
                    android:textStyle="bold"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toBottomOf="@+id/imageView9" />
            </androidx.constraintlayout.widget.ConstraintLayout>
        </LinearLayout>

    </RadioGroup>


Android XML Kotlin 用户界面 单选组

评论


答: 暂无答案