Creación de animación de inicio de sesión como facebook android

Quiero crear una página de inicio de sesión (como la aplicación de facebook android) donde se EditText campos de EditText usuario y contraseña de EditText . Un logotipo se muestra en la página que anima por encima hasta una cierta distancia y se queda en la nueva posición y, a continuación, los campos de edición se muestran.

Aquí hay algo que he intentado. Pero aquí el logotipo comienza desde la parte inferior de la página y viaja a la parte superior de la página. Donde como quiero que el logotipo para empezar desde el centro de la página y cambiar un poco hasta su nueva posición.

¿Alguna idea de cómo se puede hacer esto?

Main.xml

  <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="116dp" android:src="@drawable/ic_launcher" /> 

Res / anim / animationfile.xml

 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/linear_interpolator" > <translate android:duration="5000" android:fromYDelta="50%p" android:toYDelta="-50%p" /> </set> 

Main.java

  Animation translatebu= AnimationUtils.loadAnimation(this, R.anim.animationfile); // tv.setText("Some text view."); img.startAnimation(translatebu); 

1er La imagen de facebook sube por lo que tiene que traducir de la posición actual a la parte superior

 <translate android:fromYDelta="0%p" android:toYDelta="-30%p" android:duration="1000" /> 

Aquí android:fromYDelta es la posición de inicio y android:toYDelta es la posición final en porcentaje es decir, -30% y android:duration es en el tiempo, es decir, 1 segundo

Ahora adjunte un oyente para comprobar cuando se hace la animación 3ª Ahora se desvanecen en su cuadro de inicio de sesión

Aquí está el código

MinActivity.java

 import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.Animation; import android.view.animation.Animation.AnimationListener; import android.view.animation.AnimationUtils; import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button startAnimation =(Button) findViewById(R.id.button1); final LinearLayout LoginBox = (LinearLayout) findViewById(R.id.LoginBox); LoginBox.setVisibility(View.GONE); startAnimation.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { Animation animTranslate = AnimationUtils.loadAnimation(MainActivity.this, R.anim.translate); animTranslate.setAnimationListener(new AnimationListener() { @Override public void onAnimationStart(Animation arg0) { } @Override public void onAnimationRepeat(Animation arg0) { } @Override public void onAnimationEnd(Animation arg0) { LoginBox.setVisibility(View.VISIBLE); Animation animFade = AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade); LoginBox.startAnimation(animFade); } }); ImageView imgLogo = (ImageView) findViewById(R.id.imageView1); imgLogo.startAnimation(animTranslate); } }); } } 

Y en la carpeta anim usar estos xml

Fade.xml

 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true" android:interpolator="@android:anim/accelerate_decelerate_interpolator" > <alpha android:duration="200" android:fromAlpha="0.0" android:interpolator="@android:anim/accelerate_interpolator" android:toAlpha="1.0" /> </set> 

Traducir.xml

 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_decelerate_interpolator" android:fillAfter="true"> <translate android:fromYDelta="0%p" android:toYDelta="-30%p" android:duration="1000" /> </set> 

Y el layout activity_main.xml

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:text="Start Animation" /> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:src="@drawable/ic_launcher" /> <LinearLayout android:id="@+id/LoginBox" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:orientation="vertical" > <EditText android:id="@+id/editText1" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Email ID" /> <EditText android:id="@+id/editText2" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Password" android:inputType="textPassword" /> <Button android:id="@+id/button2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Login" /> </LinearLayout> </RelativeLayout> 

Si desea mover todo el diseño hasta en el momento de la palabra clave suave, entonces sólo tiene que añadir esto en su actividad correspondiente en el archivo de manifiesto. "android:windowSoftInputMode="adjustResize"

  • Android: LinearLayout addView Animación
  • ¿Por qué dibujar bitmaps es muy lento en algunos teléfonos Android 2.2?
  • Nido de dos animaciones en Android
  • Smooth Progress Bar Animación
  • Cómo animar texto dentro de un botón
  • Android TextView: ¿hay una manera de forzar la animación de la marquesina con texto corto?
  • Widgets de Android: Animaciones en RemoteViews?
  • Onlclick oyente no está funcionando correctamente ..?
  • Android WebView no muestra animación javascript
  • ¿Cómo puedo iniciar una actividad desde una ubicación en la pantalla, como en la pantalla de inicio o en las aplicaciones recientes?
  • Animación de curl de página de actividad de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.