强制布局重绘

时间:2017-11-14 18:40:47

标签: android layout view surfaceholder

我制作了一些带有一些视图的布局,我需要强制重绘它,因为我发现如果我使用libgconf-2-4,则invalidate不会立即重绘。

所以,我也发现我可以使用SurfaceHolder来实现这一点,但我不知道如何使用它。

如果有人可以解释我如何使用带有布局的表面支架,或者只是另一种方法来强制从布局中重绘特定视图。

所以,我有一些按钮,我以编程方式更改颜色,但不显示新颜色。 以下是颜色的变化方式:

Thread.sleep()

我在这些之间进行了控制台记录并且它执行得非常好,除了不显示新颜色(名为“移动”)。 ResetMatrix()函数重置颜色,但不应影响这一点。 我也试过了 while(array[k] < 4) { while(!running) { Thread.sleep(100); } array[k] ++; Position(k); if(Validation(k)) { buttons[solution[k].y][solution[k].x].setBackgroundColor(getResources().getColor(R.color.moving)); buttons[solution[k].y][solution[k].x].forceLayout(); if(solution[k].x == 0 || solution[k].x == width - 1 || solution[k].y == 0 || solution[k].y == height - 1) { DisplaySolution(k); Thread.sleep(300); ResetMatrix(); } else { Bkt(k + 1); } } else { buttons[solution[k].y][solution[k].x].setBackgroundColor(getResources().getColor(R.color.unpressedEmpty)); } } ,但没有用。

0 个答案:

没有答案