更改背景颜色onclick然后检索原始颜色android

时间:2011-11-24 11:45:52

标签: android android-listview android-animation

在我的应用程序中,我扩展了基本适配器并创建了自己的适配器。我有不同的背景图像的行取决于他们的位置。我想在点击“ACCOMPLISHED”时更改任何行的颜色,然后在执行onclick后检索第一个背景颜色。这是我改变背景颜色的onclick方法。

    public void onClick(View v) {

            if(pos==0)
            v.setBackgroundResource(R.drawable.stoprow);
            else if(pos==getCount()-1)
            v.setBackgroundResource(R.drawable.sbottomrow);
            else
                v.setBackgroundResource(R.drawable.smiddlerow);

            Intent details = new Intent(v.getContext(),HomeworkDetails.class);
            details.putExtra("date", data.get(pos).getDateOfAdd() );
            details.putExtra("dueDate", data.get(pos).getDuedate());
            details.putExtra("course", data.get(pos).getCourse());
            details.putExtra("note", data.get(pos).getNote());
            details.putExtra("iconLink", links.get(pos));
            v.getContext().startActivity(details);
        }
        });

现在如何在onclick()之后更改背景颜色?

1 个答案:

答案 0 :(得分:0)

只需在其中使用drawable with selector。使用按下的属性声明两个项目。一个真实和其他错误。

然后,您可以将drawable标记为适配器中的按钮。

示例drawable with selector in:

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/button_on" />
<item android:state_pressed="false" android:drawable="@drawable/button_off" /></selector>