gpt4 book ai didi

android - 如何在选择时更改 TextView 文本颜色?

转载 作者:太空宇宙 更新时间:2023-11-03 12:48:48 25 4
gpt4 key购买 nike

我的场景是当用户点击一个 TextView 文本时,它会将它的颜色从黑色变为红色。我试图解决这个问题,但什么也没发生。这是我的努力:我的 TextView

 <TextView
android:id="@+id/text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:textSize="24sp"
android:textColor="@color/text_selector"
android:text="Shamima Sultana Shaumi"/>

text_selector 类是:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:color="@android:color/red"/>
<item android:state_pressed="true" android:state_enabled="false" android:color="@android:color/red" />
<item android:state_enabled="false" android:color="@android:color/red" />
<item android:color="@android:color/black"/>
</selector>

每当我点击 TextView 时,什么也没有发生。我不知道我的问题是什么。

最佳答案

选择器可以是例如这个:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="@android:color/red" />
<item android:color="@android:color/black"/>
</selector>

并将此 OnClickListener 用于您的 textView:

textView.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
boolean isSelectedAfterClick = !v.isSelected();
v.setSelected(isSelectedAfterClick);

if (isSelectedAfterClick){
//do something
} else {
//do something
}
}
});

您可以(分别)使用state_selectedisSelectedsetSelected,而不是state_activatedisActivated setActivated

关于android - 如何在选择时更改 TextView 文本颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36556512/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com