0

我有一个文本视图,我将文本颜色设置如下:

<TextViw
android:id = "@+id/tv"
android:clickable = "true"
android:textColor = "@color/clickable_text"
android:textSize="16sp"
/>

选择器是

<item android:state_pressed "true" android:color = "#FF0000"  />  //which is red
<item android:color = "#00FF66"  />  //which is Green

文本视图按预期启动绿色。如果我单击(比如说按住它),颜色会变为红色,这很好。但是当释放点击时(即取消触摸它)。然后颜色变为黄色!这是默认颜色的android,点击后将可点击视图更改为。为什么!!!!。

它不应该像我预期的那样回到绿色吗?问题是即使我在活动之间移动并回来,这种颜色也会保持不变有什么帮助吗?谢谢

4

2 回答 2

0

我知道这不是您问题的确切答案,但是来自此链接的想法可能会对您有所帮助:Android 如何在按下或聚焦时使 TextView 文本加粗。我希望这可以帮助你。

于 2012-04-27T00:16:16.287 回答
0

您通常希望具有按下、聚焦和默认状态。并且总是把默认状态放在最后。我的猜测是,如果你长按然后松开,按钮不会被按下(红色),但仍然是焦点。因此,将您的焦点更改为绿色以及以下

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
          android:color = "#FF0000" /> <!-- pressed -->
    <item android:state_focused="true"
          android:color = "#00FF66" /> <!-- focused -->
    <item android:color = "#00FF66" /> <!-- default -->
</selector>
于 2012-04-26T18:48:45.030 回答