当我点击按钮时,我想在我的应用中更改10-15 TextView
的文字颜色。这些文本视图不在单个活动上。除了使用主题概念之外,还有其他方法可以实现这一点。
答案 0 :(得分:3)
您可以制作ArrayList
TextView
,每次创建TextView(首次启动应用时),您想要更改文本颜色,将其添加到此ArrayList。
稍后,当用户单击您的按钮时,您将调用一个方法,该方法在此ArrayList上实现循环,并设置文本颜色。
可能需要静态ArrayList来实现此目的。
ArrayList<TextView> myAlTv = new ArrayList<TextView>();
myAlTv.add(firstTv);
myAlTv.add(secondTv);
myAlTv.add(thirdTv);
//...
public void changeColor()
{
for (int i = 0; i < myAlTv.size(); i++)
{
myAlTv.get(i).setTextColor(0xFFFF0000);
}
}
答案 1 :(得分:2)
您可以使用sharedPreferences执行此操作。单击该按钮时,可以将textview应具有的颜色保存到sharedPreferences对象中。然后在您的其他活动中,您可以通过获取之前设置的sharedPreference来检索这些颜色值,并且可以轻松地将这些颜色值分配给其他活动中的textviews。