Come get l'animation a sinistra verso sinistra per avviare l'attività

Sto lavorando su un'applicazione demo where voglio applicare l'animation each volta che l'applicazione inizia activity . Ho scritto sotto il codice ma questo è per animare l'attività da sinistra a destra.

left_to_right.xml

  • Android: Accesso a database singolo da più attività nell'applicazione?
  • Perché Chrome sulla selezione HTML di datazione natale di Android diventa veramente lento?
  • Quanto è sicuramente proguard contro l'ingegneria inversa?
  • Fragment di Android maneggia la pressione sul button di riproduzione
  • Android: può l'altezza di SlidingDrawer essere impostata con wrap_content?
  • Google AdMob "cercheremo di non mostrare nuovamente l'annuncio"
  •  <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:fromXDelta="-100%" android:toXDelta="0%" android:fromYDelta="0%" android:toYDelta="0%" android:duration="500"/> </set> 

    right_to_left.xml

     <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:duration="500" android:fromXDelta="0%" android:fromYDelta="0%" android:toXDelta="100%" android:toYDelta="0%" /> </set> 

    Sono qui per iniziare activity come questa

     startActivity(new Intent(this, LoginActivity.class)); overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left); 

    Voglio raggiungere un'animation a sinistra. Come questo può essere fatto.

    Grazie in anticipo.

  • compreso il sencha touch 2 in eclipse
  • Qual è l'errore INSTALL_PARSE_FAILED_NO_CERTIFICATES?
  • Significato di errore di Android Studio: Il parametro non annotato supera il parametro @NonNull
  • Errore: (27, 13) Imansible risolvere: com.google.firebase: firebase-core: 9.8.0
  • Come aggiornare il widget each minuto
  • Quando richiedere autorizzazioni con il nuovo Android SDK 3.0 di Facebook?
  • 3 Solutions collect form web for “Come get l'animation a sinistra verso sinistra per avviare l'attività”

    Effettuate queste modifiche ai file di animation:

    enter.xml:

     <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:duration="500" android:fromXDelta="100%" android:fromYDelta="0%" android:toXDelta="0%" android:toYDelta="0%" /> </set> 

    exit.xml:

     <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:duration="500" android:fromXDelta="0%" android:fromYDelta="0%" android:toXDelta="-100%" android:toYDelta="0%" /> </set> 

    Avrai la tua seconda attività che scivola da destra a sinistra.

    Per una migliore comprensione su come giocare con i valori fromXDelta e toXDelta per le animazioni, qui è un'illustrazione fondamentale sui valori: Valori di transizione attività sull'asse X

    In questo modo puoi facilmente capire perché aggiungi Android: fromXDelta = "0%" e android: toXDelta = "- 100%" per l'attività corrente. E questo è perché si desidera che va da 0% a -100% posizione.

    [EDIT]

    Quindi, se vuoi aprire ActivityB da ActivityA, procedi come segue (diciamo che hai un button):

     button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { startActivity(new Intent(ActivityA.this, ActivityB.class)); overridePendingTransition(R.anim.enter, R.anim.exit); } }); 

    Ora, se vuoi avere l'animation "all'indietro" del primo, quando lasci l'Attività B, avrai bisogno di 2 nuovi file di animation e di un codice nel metodo OnBackPressed di ActivityB, come segue:

    Innanzitutto i file di animation: left_to_right.xml:

     <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:duration="500" android:fromXDelta="-100%" android:fromYDelta="0%" android:toXDelta="0%" android:toYDelta="0%" /> </set> 

    right_to_left.xml:

     <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:shareInterpolator="false"> <translate android:duration="500" android:fromXDelta="0%" android:fromYDelta="0%" android:toXDelta="100%" android:toYDelta="0%" /> </set> 

    E in ActivityB effettuare quanto segue:

     @Override public void onBackPressed() { super.onBackPressed(); overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left); } 

    Anche se hai abilitato la navigazione, dovrai aggiungere anche l'animation in questo caso:

    Abilita la navigazione UP come questa:

     @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getActionBar().setDisplayHomeAsUpEnabled(true); } 

    Ecco come gestire l'animation anche in questo caso:

     @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { // Respond to the action bar's Up/Home button case android.R.id.home: //NavUtils.navigateUpFromSameTask(this); finish(); overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left); return true; } return super.onOptionsItemSelected(item); } 

    Ricorda inoltre che anche se il codice è corretto, il telefono potrebbe distriggersre l'animation. Per triggersre e quindi triggersre:

    1. Apri Impostazioni e vai a Opzioni dello sviluppatore
    2. Assicurarsi che sia abilitato (facendo scorrere il button di scorrimento in alto a destra)
    3. Scorri verso il basso e sotto Disegno, toccare queste opzioni una per volta: scala di animation di Windows, scala di animation di transizione e scala di durata di animatore
    4. Selezionare "Scala di animation 1x"

    Questo aiuta?

    overridePendingTransition dovrebbe essere chiamato nell'attività "target". Ad esempio: Andando dall'attività A -> B, metteresti la chiamata overridePendingTransition nella onCreate dell'attività B.

    Tenga presente che se l'utente ha distriggersto l'animation a livello di sistema, non è ansible costringere le animazioni a mostrare.

    EDIT:

    Un esempio potrebbe essere simile a questo:

     @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); overridePendingTransition(R.anim.enter, R.anim.exit); } 

    Prova questo codice, sta funzionando per me

    Per scorrere da destra a sinistra

     <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true" > <translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:fromXDelta="0%" android:toXDelta="-50%" > </translate> </set> 

    Per scorrere da sinistra a destra

     <?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:fromXDelta="-50%" android:toXDelta="0%" > </translate> 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.