Ho GridView
e voglio animation
come Google Play Store. In questo, quando clicchiamo su qualsiasi app, questo reindirizza alla sua pagina di dettaglio. A quel tempo accade una piccola animazione. Voglio questo tipo di animazione per il mio GridView
e la sua pagina di dettaglio. Ho bisogno di aiuto se qualcuno è a conoscenza di questo tipo di transizione di attività da una classe all'altra.Animazione di attività come Google Play Store
6
A
risposta
6
Questo è il tuo primo codice attività da cui si desidera spostare a schermata dei dettagli
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.app.ActivityOptionsCompat;
import android.support.v4.util.Pair;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
public class StartActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);
}
public void onClick(View view) {
View imageView = findViewById(R.id.imageView);
View textView = findViewById(R.id.textView);
View button = findViewById(R.id.button);
Intent intent = new Intent(this, EndActivity.class);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
textView.setTransitionName(getString(R.string.activity_text_trans));
button.setTransitionName(getString(R.string.activity_mixed_trans));
Pair<View, String> pair1 = Pair.create(imageView, imageView.getTransitionName());
Pair<View, String> pair2 = Pair.create(textView, textView.getTransitionName());
Pair<View, String> pair3 = Pair.create(button, button.getTransitionName());
ActivityOptionsCompat options = ActivityOptionsCompat.
makeSceneTransitionAnimation(this, pair1, pair2, pair3);
startActivity(intent, options.toBundle());
}
else {
startActivity(intent);
}
}
}
Questa è la schermata dei dettagli dell'attività
import android.os.Build;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
public class EndActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_end);
View smallImageView = findViewById(R.id.textView);
View editText = findViewById(R.id.editText);
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
smallImageView.setTransitionName(getString(R.string.activity_text_trans));
editText.setTransitionName(getString(R.string.activity_mixed_trans));
}
}
}
file di FirstActivity layouut
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="16dp">
<ImageView
android:id="@+id/imageView"
android:layout_width="120dp"
android:layout_height="120dp"
android:layout_centerHorizontal="true"
android:src="@drawable/aa_logo_green"
android:transitionName="@string/activity_image_trans"/>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/imageView"
android:text="Simple TextView"
android:textSize="20sp"/>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/textView"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:text="Click Me"
style="@style/Widget.AppCompat.Button.Borderless"
android:onClick="onClick"/>
</RelativeLayout>
file di layout EndActivity XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="16dp">
<ImageView
android:id="@+id/imageView"
android:layout_width="220dp"
android:layout_height="220dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:src="@drawable/aa_logo_green"
android:transitionName="@string/activity_image_trans"/>
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:hint="An EditText"
android:textSize="24sp"/>
<ImageView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/imageView"
android:layout_alignBottom="@id/imageView"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:src="@drawable/aa_logo_blue"/>
</RelativeLayout>
1
Penso che si desidera transazione attività esattamente materiale, leggere questo developer doc here anche provare questo lib per l'animazione Traduzionehttps://github.com/lgvalle/Material-Animations
Problemi correlati
- 1. Scansione del Google Play Store
- 2. Rinomina app nel Play Store di Google
- 3. Distribuire su Google Play Store tramite API
- 4. Codice errore Google Play Store -2
- 5. layout di barra degli strumenti compresso come google play store
- 6. Barra degli strumenti collassabile come Google Play Store
- 7. Come richiedere informazioni sull'app da Google Play Store senza autenticazione
- 8. Emulatore VS per Android: Google Play Store si blocca dopo l'installazione di Gapps (Google Play Services)
- 9. Ripristina il numero di versione nel Play Store di Google
- 10. Sviluppo di app Android per Google Play e Amazon Store
- 11. Impossibile aggiornare il prezzo di un'applicazione su Google Play Store
- 12. Ricerca di brani musicali da Google Play Store tramite un'API
- 13. Errore di Google Play Store DF-BPA-10
- 14. Ottieni visualizzazioni di Play Store e installazioni come "Flusso referral di Google Play" con google analytics reporting api
- 15. Reindirizza gli utenti all'app store di iTunes o al Play Store di Google?
- 16. Notifica di riproduzione del Play Store Android
- 17. Posso nascondere la mia applicazione in Google Play Store?
- 18. Statistiche per visitare la mia applicazione su Google Play Store
- 19. Google Analytics per Google Play pagina dell'app
- 20. Aggiornamento descrizione app su Play Store
- 21. Riconoscimento attività servizi Google Play - Utilizzo della batteria?
- 22. App pubblicata non aggiornata sul Play Store
- 23. Come riorganizzare le schermate su Google Play
- 24. SearchView come Google Play Video App
- 25. Sezione Funzioni di gioco nella vista dettagliata dell'app Play Store
- 26. Rilevamento automatico delle attività di Google Analytics: puoi escludere una singola attività da questo?
- 27. C'è un modo per cambiare il nome di un'applicazione nell'app store di Google Play?
- 28. Play Store - Stato pronto per la pubblicazione
- 29. Come aprire la pagina degli sviluppatori su Google Play Store (market: //)
- 30. Come aggiungere un gruppo email a Google Play Store Test Alpha/Beta
Questo non è un "lib" . È una spiegazione su come utilizzare [Android Transition Framework] di google (https://developer.android.com/training/transitions/overview.html). Ed è fantastico! –