每当我对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进行任何编程,因此可能会有更好的解决方案。