android 如何根据文本视图更改背景颜色

bxgwgixi  于 2022-11-03  发布在  Android
关注(0)|答案(3)|浏览(221)

我想根据蓝牙状态更改背景颜色。单击该按钮时,文本视图中会出现文本(蓝牙打开)。第二次按该按钮后,文本视图中会出现文本(蓝牙关闭),我想根据文本更改背景颜色。

switch (Tv.getText().toString()){
    case "Bluetooth ON":
        layoutleft.setBackgroundResource(R.color.Green);
        break;

    case "Bluetooth OFF":
        layoutleft.setBackgroundResource(R.color.Red);
        break;

}

`

<TextView
    android:id="@+id/bluetooth_status"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/read_buffer"
    android:layout_alignParentStart="true"
    android:layout_alignParentEnd="true"
    android:layout_marginStart="50dp"
    android:layout_marginTop="6dp"
    android:layout_marginEnd="50dp"
    android:layout_weight="0.9"
    android:ellipsize="end"
    android:maxLines="1"
    android:text="Connected Device"
    android:textAlignment="center" />

<TextView
    android:id="@+id/read_buffer"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginStart="50dp"
    android:layout_marginLeft="50dp"
    android:layout_marginTop="10dp"
    android:layout_marginEnd="50dp"
    android:layout_marginRight="50dp"
    android:layout_weight="0.9"
    android:ellipsize="end"
    android:maxLines="1"
    android:textAlignment="center" />

<ListView
    android:id="@+id/ListView"
    android:layout_width="wrap_content"
    android:layout_height="104dp"
    android:layout_below="@+id/button3"
    android:layout_alignParentStart="true"
    android:layout_alignParentEnd="true"
    android:layout_marginStart="13dp"
    android:layout_marginTop="9dp"
    android:layout_marginEnd="11dp"
    android:choiceMode="singleChoice" />
<Button
    android:id="@+id/BtBtn"
    android:layout_width="wrap_content"
    android:layout_height="25dp"
    android:layout_below="@+id/BtTv"
    android:layout_alignParentStart="true"
    android:layout_alignParentEnd="true"
    android:layout_marginStart="10dp"
    android:layout_marginTop="10dp"
    android:layout_marginEnd="10dp"
    android:background="#A9D1F1"
    android:text="Bluetooth ON/OFF" />
<TextView
    android:id="@+id/BtTv"
    android:layout_width="309dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/bluetooth_status"
    android:layout_centerHorizontal="true"
    android:layout_marginStart="50dp"
    android:layout_marginTop="8dp"
    android:layout_marginEnd="50dp"
    android:hint="Bluetooth Status"
    android:textAlignment="center"
    android:textColor="#000000"
    android:textSize="14sp" />
<Button
    android:id="@+id/button3"
    android:layout_width="wrap_content"
    android:layout_height="25dp"
    android:layout_below="@+id/BtBtn"
    android:layout_alignParentStart="true"
    android:layout_alignParentEnd="true"
    android:layout_marginStart="10dp"
    android:layout_marginTop="10dp"
    android:layout_marginEnd="10dp"
    android:background="#E3A345"
    android:text="Discover New Devices" />
<LinearLayout
    android:id="@+id/layout"
    android:layout_width="wrap_content"
    android:layout_height="413dp"
    android:layout_below="@+id/ListView"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    android:layout_marginStart="4dp"
    android:layout_marginLeft="4dp"
    android:layout_marginTop="48dp"
    android:layout_marginEnd="277dp"
    android:layout_marginRight="277dp"
    android:layout_marginBottom="6dp"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/textView12"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Left Sensor"
        android:textAlignment="center"
        android:textColor="#000000"
        android:textSize="12sp" />
</LinearLayout>
<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="412dp"
    android:layout_below="@+id/ListView"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    android:layout_marginStart="141dp"
    android:layout_marginLeft="141dp"
    android:layout_marginTop="48dp"
    android:layout_marginEnd="140dp"
    android:layout_marginRight="140dp"
    android:layout_marginBottom="6dp"
    android:orientation="horizontal">
    <TextView
        android:id="@+id/textView13"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Center Sensor"
        android:textAlignment="center"
        android:textColor="#000000"
        android:textSize="12sp" />
</LinearLayout>
<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="415dp"
    android:layout_below="@+id/ListView"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    android:layout_marginStart="274dp"
    android:layout_marginLeft="274dp"
    android:layout_marginTop="48dp"
    android:layout_marginEnd="7dp"
    android:layout_marginRight="7dp"
    android:layout_marginBottom="6dp"
    android:orientation="horizontal">
    <TextView
        android:id="@+id/textView14"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Right Sensor"
        android:textAlignment="center"
        android:textColor="#000000"
        android:textSize="12sp" />
</LinearLayout>
<TextView
    android:id="@+id/textView7"
    android:layout_width="129dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ListView"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:textAlignment="center"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginStart="4dp"
    android:layout_marginLeft="4dp"
    android:layout_marginTop="15dp"
    android:layout_marginEnd="278dp"
    android:layout_marginRight="278dp" />

<TextView
    android:id="@+id/textView8"
    android:layout_width="129dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ListView"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginStart="145dp"
    android:layout_marginLeft="145dp"
    android:layout_marginTop="15dp"
    android:layout_marginEnd="137dp"
    android:layout_marginRight="137dp"
    android:textAlignment="center" />

<TextView
    android:id="@+id/textView9"
    android:layout_width="129dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ListView"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginStart="286dp"
    android:layout_marginLeft="286dp"
    android:layout_marginTop="15dp"
    android:layout_marginEnd="-4dp"
    android:layout_marginRight="-4dp"
    android:textAlignment="center" />

我试着这样做:(代码)似乎可以工作,但在关闭和打开屏幕之前不会动态更改。

lhcgjxsq

lhcgjxsq1#

是否已尝试在TextView上使用其他方法?
对于背景,有多种方法可供选择,例如Tv.setBackgroundColor(R.color.Green);
Tv.setBackgroundResource(R.color.Green)只是在drawable文件夹中查找一个资源,不管你给它起了什么名字:)。
希望这能解决你的问题。

qgelzfjb

qgelzfjb2#

switch (Tv.getText().toString()){
    case "Bluetooth ON":
        layoutleft.setBackgroundColor(Color.parseColor("#5CE058"));
        break;

    case "Bluetooth OFF":
        layoutleft.setBackgroundColor(Color.parseColor("#FFF6A5"));
        break;

}
643ylb08

643ylb083#

有很多不同的方法只是背景,尝试以下

文本查看.设置背景资源(R.color.green)

相关问题