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

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

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

  1. switch (Tv.getText().toString()){
  2. case "Bluetooth ON":
  3. layoutleft.setBackgroundResource(R.color.Green);
  4. break;
  5. case "Bluetooth OFF":
  6. layoutleft.setBackgroundResource(R.color.Red);
  7. break;
  8. }

`

  1. <TextView
  2. android:id="@+id/bluetooth_status"
  3. android:layout_width="wrap_content"
  4. android:layout_height="wrap_content"
  5. android:layout_below="@+id/read_buffer"
  6. android:layout_alignParentStart="true"
  7. android:layout_alignParentEnd="true"
  8. android:layout_marginStart="50dp"
  9. android:layout_marginTop="6dp"
  10. android:layout_marginEnd="50dp"
  11. android:layout_weight="0.9"
  12. android:ellipsize="end"
  13. android:maxLines="1"
  14. android:text="Connected Device"
  15. android:textAlignment="center" />
  16. <TextView
  17. android:id="@+id/read_buffer"
  18. android:layout_width="wrap_content"
  19. android:layout_height="wrap_content"
  20. android:layout_alignParentStart="true"
  21. android:layout_alignParentLeft="true"
  22. android:layout_alignParentTop="true"
  23. android:layout_alignParentEnd="true"
  24. android:layout_alignParentRight="true"
  25. android:layout_marginStart="50dp"
  26. android:layout_marginLeft="50dp"
  27. android:layout_marginTop="10dp"
  28. android:layout_marginEnd="50dp"
  29. android:layout_marginRight="50dp"
  30. android:layout_weight="0.9"
  31. android:ellipsize="end"
  32. android:maxLines="1"
  33. android:textAlignment="center" />
  34. <ListView
  35. android:id="@+id/ListView"
  36. android:layout_width="wrap_content"
  37. android:layout_height="104dp"
  38. android:layout_below="@+id/button3"
  39. android:layout_alignParentStart="true"
  40. android:layout_alignParentEnd="true"
  41. android:layout_marginStart="13dp"
  42. android:layout_marginTop="9dp"
  43. android:layout_marginEnd="11dp"
  44. android:choiceMode="singleChoice" />
  45. <Button
  46. android:id="@+id/BtBtn"
  47. android:layout_width="wrap_content"
  48. android:layout_height="25dp"
  49. android:layout_below="@+id/BtTv"
  50. android:layout_alignParentStart="true"
  51. android:layout_alignParentEnd="true"
  52. android:layout_marginStart="10dp"
  53. android:layout_marginTop="10dp"
  54. android:layout_marginEnd="10dp"
  55. android:background="#A9D1F1"
  56. android:text="Bluetooth ON/OFF" />
  57. <TextView
  58. android:id="@+id/BtTv"
  59. android:layout_width="309dp"
  60. android:layout_height="wrap_content"
  61. android:layout_below="@+id/bluetooth_status"
  62. android:layout_centerHorizontal="true"
  63. android:layout_marginStart="50dp"
  64. android:layout_marginTop="8dp"
  65. android:layout_marginEnd="50dp"
  66. android:hint="Bluetooth Status"
  67. android:textAlignment="center"
  68. android:textColor="#000000"
  69. android:textSize="14sp" />
  70. <Button
  71. android:id="@+id/button3"
  72. android:layout_width="wrap_content"
  73. android:layout_height="25dp"
  74. android:layout_below="@+id/BtBtn"
  75. android:layout_alignParentStart="true"
  76. android:layout_alignParentEnd="true"
  77. android:layout_marginStart="10dp"
  78. android:layout_marginTop="10dp"
  79. android:layout_marginEnd="10dp"
  80. android:background="#E3A345"
  81. android:text="Discover New Devices" />
  82. <LinearLayout
  83. android:id="@+id/layout"
  84. android:layout_width="wrap_content"
  85. android:layout_height="413dp"
  86. android:layout_below="@+id/ListView"
  87. android:layout_alignParentStart="true"
  88. android:layout_alignParentLeft="true"
  89. android:layout_alignParentEnd="true"
  90. android:layout_alignParentRight="true"
  91. android:layout_alignParentBottom="true"
  92. android:layout_marginStart="4dp"
  93. android:layout_marginLeft="4dp"
  94. android:layout_marginTop="48dp"
  95. android:layout_marginEnd="277dp"
  96. android:layout_marginRight="277dp"
  97. android:layout_marginBottom="6dp"
  98. android:orientation="horizontal">
  99. <TextView
  100. android:id="@+id/textView12"
  101. android:layout_width="wrap_content"
  102. android:layout_height="wrap_content"
  103. android:layout_weight="1"
  104. android:text="Left Sensor"
  105. android:textAlignment="center"
  106. android:textColor="#000000"
  107. android:textSize="12sp" />
  108. </LinearLayout>
  109. <LinearLayout
  110. android:layout_width="wrap_content"
  111. android:layout_height="412dp"
  112. android:layout_below="@+id/ListView"
  113. android:layout_alignParentStart="true"
  114. android:layout_alignParentLeft="true"
  115. android:layout_alignParentEnd="true"
  116. android:layout_alignParentRight="true"
  117. android:layout_alignParentBottom="true"
  118. android:layout_marginStart="141dp"
  119. android:layout_marginLeft="141dp"
  120. android:layout_marginTop="48dp"
  121. android:layout_marginEnd="140dp"
  122. android:layout_marginRight="140dp"
  123. android:layout_marginBottom="6dp"
  124. android:orientation="horizontal">
  125. <TextView
  126. android:id="@+id/textView13"
  127. android:layout_width="wrap_content"
  128. android:layout_height="wrap_content"
  129. android:layout_weight="1"
  130. android:text="Center Sensor"
  131. android:textAlignment="center"
  132. android:textColor="#000000"
  133. android:textSize="12sp" />
  134. </LinearLayout>
  135. <LinearLayout
  136. android:layout_width="wrap_content"
  137. android:layout_height="415dp"
  138. android:layout_below="@+id/ListView"
  139. android:layout_alignParentStart="true"
  140. android:layout_alignParentLeft="true"
  141. android:layout_alignParentEnd="true"
  142. android:layout_alignParentRight="true"
  143. android:layout_alignParentBottom="true"
  144. android:layout_marginStart="274dp"
  145. android:layout_marginLeft="274dp"
  146. android:layout_marginTop="48dp"
  147. android:layout_marginEnd="7dp"
  148. android:layout_marginRight="7dp"
  149. android:layout_marginBottom="6dp"
  150. android:orientation="horizontal">
  151. <TextView
  152. android:id="@+id/textView14"
  153. android:layout_width="wrap_content"
  154. android:layout_height="wrap_content"
  155. android:layout_weight="1"
  156. android:text="Right Sensor"
  157. android:textAlignment="center"
  158. android:textColor="#000000"
  159. android:textSize="12sp" />
  160. </LinearLayout>
  161. <TextView
  162. android:id="@+id/textView7"
  163. android:layout_width="129dp"
  164. android:layout_height="wrap_content"
  165. android:layout_below="@+id/ListView"
  166. android:layout_alignParentStart="true"
  167. android:layout_alignParentLeft="true"
  168. android:textAlignment="center"
  169. android:layout_alignParentEnd="true"
  170. android:layout_alignParentRight="true"
  171. android:layout_marginStart="4dp"
  172. android:layout_marginLeft="4dp"
  173. android:layout_marginTop="15dp"
  174. android:layout_marginEnd="278dp"
  175. android:layout_marginRight="278dp" />
  176. <TextView
  177. android:id="@+id/textView8"
  178. android:layout_width="129dp"
  179. android:layout_height="wrap_content"
  180. android:layout_below="@+id/ListView"
  181. android:layout_alignParentStart="true"
  182. android:layout_alignParentLeft="true"
  183. android:layout_alignParentEnd="true"
  184. android:layout_alignParentRight="true"
  185. android:layout_marginStart="145dp"
  186. android:layout_marginLeft="145dp"
  187. android:layout_marginTop="15dp"
  188. android:layout_marginEnd="137dp"
  189. android:layout_marginRight="137dp"
  190. android:textAlignment="center" />
  191. <TextView
  192. android:id="@+id/textView9"
  193. android:layout_width="129dp"
  194. android:layout_height="wrap_content"
  195. android:layout_below="@+id/ListView"
  196. android:layout_alignParentStart="true"
  197. android:layout_alignParentLeft="true"
  198. android:layout_alignParentEnd="true"
  199. android:layout_alignParentRight="true"
  200. android:layout_marginStart="286dp"
  201. android:layout_marginLeft="286dp"
  202. android:layout_marginTop="15dp"
  203. android:layout_marginEnd="-4dp"
  204. android:layout_marginRight="-4dp"
  205. android:textAlignment="center" />

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

lhcgjxsq

lhcgjxsq1#

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

qgelzfjb

qgelzfjb2#

  1. switch (Tv.getText().toString()){
  2. case "Bluetooth ON":
  3. layoutleft.setBackgroundColor(Color.parseColor("#5CE058"));
  4. break;
  5. case "Bluetooth OFF":
  6. layoutleft.setBackgroundColor(Color.parseColor("#FFF6A5"));
  7. break;
  8. }
643ylb08

643ylb083#

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

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

相关问题