Comportamiento de updateViewLayout extraño

Tengo una vista (personalizada) añadida con getWindowManager().addView() y más tarde estoy modificando los LayoutParameters de ella (cambiando x & width ) y llamar a getWindowManager().updateViewLayout() . Esto funciona, pero estoy recibiendo dos refrescos de pantalla, primero sólo se mueve la cosa entera de acuerdo con el nuevo x y más tarde se escala de acuerdo con el nuevo ancho. ¿Alguna idea acerca de por qué está sucediendo esto aunque sólo llamo a updateViewLayout sólo una vez con los nuevos parámetros de diseño?

FYI: el método onDraw de la vista dibujada a medida mencionada aquí también es llamado sólo una vez por el sistema durante este proceso.

Tratar:

 runOnUiThread(new Runnable() { public void run() { view.updateViewLayout(); } }); 

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

Si no funciona, compruebe lo siguiente:

¿Cómo mover una vista en Android?

¿Estás haciendo esto?

intenta hacerlo :

 view.post(new Runnable() { public void run() { view.updateViewLayout(); } }); 

updateViewLayout es un método que puede ser invalidado por su ViewGroup personalizado y en este método ViewGroup puede implementar todo lo que quiere cambiar.

¿Tal vez haces algo mal en ella?

O también tal vez tienes que implementar este código en UiThread como en otras preguntas. – En este caso, cuando cambia sus parámetros de forma asíncrona con la primera llamada de la función de dibujo por sistema, su método tal vez pueda cambiar sólo un parámetro y en segunda llamada el segundo parámetro también se cambiará.

  • ¿Cómo accedo a las vistas dentro del diseño cuando la reutilizo varias veces?
  • Android: el diseño gráfico no funciona - no muestra nada
  • ¿Es posible acceder a un elemento de string-array en Android?
  • Densidad y resolución de Android xhdpi
  • Uso de una tipografía personalizada en Android
  • Columna de 2 columnas con 50% exactamente para cada columna
  • Android: ¿Cómo puedo hacer que las vistas de texto floten a la izquierda?
  • addView no funciona
  • Este diseño TableLayout o su padre LinearLayout es inútil cómo resolver de esta advertencia
  • El soporte de diseño de derecha a izquierda está causando problemas de advertencia en el editor de xml
  • Hacer un SurfaceView transparente sin setZOrderOnTop (true)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.