每当我对CSS类进行更改时,更改都不会总是出现。当我有一个触摸事件向按钮添加了诸如下类名称之类的触摸事件时,似乎发生了这种情况。该按钮不会更新,页面上的其他任何内容也不会更新。它何时工作非常不稳定。我还注意到有时我的元素显示为白色,没有任何内容。这真令人沮丧!
我实施了kyle的解决方案,它解决了问题。Howewer,当我打开应用程序时,我注意到android 4.0.4上的大量电池消耗。同样在更改之后,我还让用户抱怨swiftKey键盘不再可用于我的应用程序。
我的应用程序中的每个更改都是由用户操作触发的,因此我想出了一个修改后的版本,该版本仅在touchEvent之后触发invalidate():
Handler handler = new Handler(); public boolean onTouchEvent (MotionEvent event){ super.onTouchEvent(event); handler.postDelayed(triggerInvalidate, 60); handler.postDelayed(triggerInvalidate, 300); return true; } private Runnable triggerInvalidate=new Runnable(){ public void run(){ invalidate(); } };
从未使用Java进行任何编程,因此可能会有更好的解决方案。