我有一个添加了getWindowManager().addView()
的视图(自定义绘制),后来我修改了它的LayoutParameters
(更改x
&width
)并调用getWindowManager().updateViewLayout()
。这很有效,但是我得到了两个屏幕刷新,第一个只是根据新的x
移动整个东西,然后一个根据新的宽度缩放它。即使我只使用新的布局参数调用一次updateViewLayout
,为什么会发生这种情况呢?
仅供参考:在此过程中,系统仅调用此处提到的自定义绘制视图的onDraw
方法一次。
最佳答案
尝试:
runOnUiThread(new Runnable() {
public void run() {
view.updateViewLayout();
}
});
http://developer.android.com/reference/android/app/Activity.html#runOnUiThread(java.lang.Runnable)
如果不起作用,请检查:
How to move a view in Android?
你在做这个吗?