【发布时间】:2014-09-08 00:45:05
【问题描述】:
所以目前,我正在尝试为三个文本视图创建一个选定状态
目前,对于每个文本视图 (H M S),文本都是红色的:
但是,当点击 H M 或 S 时,我希望它变成另一种颜色——白色。
所以我试着遵循这个:
Android - Textview change color on changing of state
我做了这个(selected_text.xml):
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"
android:color="#ffd10011"/> <!-- selected -->
<item android:color="@color/red_highlight"/> <!-- default -->
</selector>
并应用:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Hours"
android:textSize="30sp"
android:textColor="@color/selected_text"
android:id="@+id/hourtext"
android:layout_marginLeft="45dp"
android:layout_alignTop="@+id/minutetext"
android:layout_alignLeft="@+id/seekArc"
android:layout_alignStart="@+id/seekArc" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Minutes"
android:textSize="30dp"
android:textColor="@color/selected_text"
android:id="@+id/minutetext"
android:layout_below="@+id/seekArc"
android:layout_centerHorizontal="true"
android:layout_marginTop="28dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Second"
android:textSize="30dp"
android:textColor="@color/selected_text"
android:id="@+id/secondtext"
android:layout_alignTop="@+id/minutetext"
android:layout_alignRight="@+id/seekArc"
android:layout_alignEnd="@+id/seekArc"
android:layout_marginRight="43dp" />
但是,文本视图在我单击它们后不会改变颜色。
我该如何解决这个问题?
另外, 我想知道在java代码中实现这个是否更好,因为在单击/突出显示每个文本视图后我需要执行不同的功能。如果是这样,如何实施?
【问题讨论】:
-
检查这个话题是否有帮助stackoverflow.com/a/12081273/3640637
标签: java android xml android-layout