随机颜色不起作用,只显示一个

时间:2014-07-22 15:17:50

标签: java android random arraylist colors

我创建了一个带有一些颜色的数组然后我会在我的视图中点击视图的颜色随机变化。这就是我到目前为止所做的事情

List<String> colors = new ArrayList<>();
   colors.add("#e84e40"); //red
   colors.add("#ec407a"); //pink
   colors.add("#ab47bc"); //purple
   colors.add("#7e57c2"); //deep purple
   colors.add("#5c6bc0"); //indigo
   colors.add("#738ffe"); //blue
   colors.add("#29b6f6"); //light blue
   colors.add("#26c6da"); //cyano
   colors.add("#26a69a"); //teal
   colors.add("#2baf2b"); //green
   colors.add("#9ccc65"); //light green
   colors.add("#d4e157"); //lime
   colors.add("#ffee58"); //yellow
   colors.add("#ffca28"); //amber


Random n= new Random(0);
color = n.nextInt(colors.size());
db.getBackground().setColorFilter(Color.parseColor(colors.get(color)), Mode.MULTIPLY);

但不起作用,而是随机显示所有颜色,它始终只显示绿色。任何的想法?

编辑: 如果我写 Random n= new Random();它显示2种颜色..索引可能有问题吗?

1 个答案:

答案 0 :(得分:1)

尝试使用LightingColorFilter,

Random n= new Random(0);
color = n.nextInt(colors.size());
db.getBackground().setColorFilter(new LightingColorFilter(color, 0));