奇怪的updateViewLayout行为

vol*_*ion 9 layout android

我添加了一个视图(自定义绘制)getWindowManager().addView(),后来我正在修改LayoutParameters它(更改x&width)并调用getWindowManager().updateViewLayout().这有效,但我得到两个屏幕刷新,第一个只根据新的移动整个事物x,后来根据新的宽度进行缩放.关于为什么会发生这种情况的任何想法,即使我只updateViewLayout用新的布局参数调用一次?

仅供参考:onDraw此处提到的自定义绘制视图的方法在此过程中也只被系统调用一次.

net*_*ein 6

尝试:

runOnUiThread(new Runnable() {
      public void run() {
          view.updateViewLayout();
       }
    });
Run Code Online (Sandbox Code Playgroud)

http://developer.android.com/reference/android/app/Activity.html#runOnUiThread(java.lang.Runnable)

如果它不起作用,请检查:

如何在Android中移动视图?

你在做这个吗?


lok*_*oko 2

试着做 :

view.post(new Runnable() {

  public void run() {
    view.updateViewLayout();
  }

});
Run Code Online (Sandbox Code Playgroud)