gpt4 book ai didi

android - 在弹出窗口中单击时,textview 背景颜色没有改变

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:28:56 27 4
gpt4 key购买 nike

我正在使用带有 TextView 的 PopUpwindow。问题是当我点击任何一个 textvies 时,背景颜色没有改变,尽管当 textview 聚焦但没有点击时背景颜色正在改变。

单击后我将关闭弹出窗口,如果我不关闭弹出窗口,则背景颜色会根据选择器更改:

这是我的 TextView 背景选择器:

<item android:state_focused="true" android:drawable="@drawable/focused" />    
<item android:state_pressed="true" android:drawable="@drawable/pressed" />
<item android:drawable="@drawable/priornone" /> <!-- default --> </selector>

在我的弹出窗口中,我所做的就是:

TextView manage_list = (TextView)popupView.findViewById(R.id.manage_lists);
manage_list.setOnClickListener(new View.OnClickListener(){

public void onClick(View v)
{

Intent myIntent = new Intent(v.getContext(),ManageList.class);
popupWindow.dismiss();
startActivity(myIntent);

}});

弹出窗口的布局文件:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/pop_menu_bg"
android:orientation="vertical"
>

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/manage_lists"
android:text="Manage lists"
android:background="@drawable/my_drawable"
>
</TextView>


</LinearLayout>

它的行为非常奇怪,如果我不关闭弹出窗口,一切正常,但如果我在单击时关闭弹出窗口,textview 背景不会改变。

我做错了什么?任何帮助将不胜感激。

最佳答案

您会像使用 Checkbox 一样使用 TextView,不是吗?

使用 bool 标志来试试这个。

private boolean clicked = false;

// ...

mytextView.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
clicked = !clicked;

if(clicked){
mytextView.setBackgroundColor(yourcolorclicked);
}else{
mytextView.setBackgroundColor(yourcolorunclicked);
}
mytextView.invalidate();
}
});

关于android - 在弹出窗口中单击时,textview 背景颜色没有改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11454340/

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