我正在开发我的第一个Android应用程序,它是一个非常基本的待办事项列表应用程序。 我使用SQLite数据库来存储任务。添加的任务将显示在主要活动中。
我希望用户能够点击任何任务来完成标记,因此任务必须将其颜色更改为红色。
如果用户再次点击相同的任务,它应该恢复为原始颜色。
我试图像这样添加一个onclick监听器:
public void onTaskDone(View view){
view.setTextColor(Color.RED);
}
但是setTextColor方法显示为红色(这意味着它不能像这样完成)。
请帮助!!
答案 0 :(得分:2)
您可以通过添加onclick Listener来实现此目的,并且您可以更改文本颜色
tvStatus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(tvStatus.getCurrentTextColor()==Color.BLACK)
tvStatus.setTextColor(Color.RED);
}else{
tvStatus.setTextColor(Color.BLACK);
}
}
});
答案 1 :(得分:1)
API functions
答案 2 :(得分:0)
boolean isSelected =false;
public void onTaskDone(TextView view){
view.setTextColor(isSelected?Color.BLACK:Color.RED);
isSelected = !isSelected;
}
答案 3 :(得分:0)
在单个textview单击侦听器中,我们可以更改颜色,如下所示。i具有适配器类,我想单击特定位置,textview在单击时需要更改颜色。...
holder.statusText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (holder.statusText.getCurrentTextColor() == context.getResources().getColor(R.color.colorSkyBlue)) {
holder.statusText.setTextColor(Color.BLACK);
} else {
holder.statusText.setTextColor(context.getResources().getColor(R.color.colorSkyBlue));
}
}
});
它真的对我有用。