¿Cómo hacer que los botones se muevan en la programación de Android?
Para hacer que el botón se mueva, simplemente cambie el atributo de posición del botón. Por ejemplo, una situación relativamente simple es que el botón se coloca en un FrameLayout, el margen izquierdo es 10 y el margen derecho es 10, luego el botón está ubicado en la posición (10, 10) del diseño principal en el estado inicial. , establezca el margen en el valor del código, puede colocar el botón: FrameLayout.LayoutParams?lp?=?(FrameLayout.LayoutParams)button.getLayoutParams();
lp.setMargins(20/*left* /, 20/*top*/ , 0/*right*/, 0/*bottom*/);
button.setLayoutParams(lp);
De esta manera puedes posicionar el botón al punto (20, 20).
De esta manera, LZ puede ver que si su botón está posicionado a través de otras Vistas en RelativeLayout o LinearLayout, entonces el método para cambiar la posición del Botón será mucho más complicado. Por favor, LZ ajuste el diseño de acuerdo a sus necesidades.
Además, si LZ necesita animación, puede considerar usar Animación. La idea de usarla es muy simple. El paso es definir una animación y luego vincular la animación al botón para su ejecución. Por ejemplo, el código móvil anterior puede ser así: Animation?anim?=?new?TranslateAnimation(10/*From?X*/, 20/*To?X*/, 10/*From?Y*/, 20/*To?Y*/); p>
button.startAnimation(anim);
Por supuesto, la animación realmente no mueve la posición real del botón al lugar requerido. Simplemente implementa un efecto de transformación a través de la matriz, generalmente usando El método es: primero ejecute la animación y mueva el botón al lugar que desea mover en la devolución de llamada final de la animación.
Si utiliza animación, preste atención a varios métodos de animación:
setFillBefore
setFillAfter
setAnimationListener