Android: ShowCase Mostrar sólo una vez y repetir la animación
Estoy usando la biblioteca ShowCase View en mis fragmentos. Muestro una animación gestual que debe repetirse hasta que el usuario presione el botón OK. Pero sólo se muestra una vez.
También el escaparate se muestra cada vez que el fragmento se crea y no sólo una vez.
- ¿Cómo se crea una pantalla de demostración transparente para una aplicación de Android?
- Cómo hacer la vista de rectángulo en showcaseview para listview
- ¿Cómo construyo estas bibliotecas desde GitHub?
- Android: error de heap importando ShowcaseView como proyecto, ClassNotFound si como JAR, Fuera de memoria
- ShowcaseView - el ancho y la altura deben ser> 0
Mi código se ve así:
public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); //get display size for slide over screen Display display = getActivity().getWindowManager().getDefaultDisplay(); Point p = new Point(); display.getSize(p); if(!is_tablet()){ // ShowView Tutorial if on smartphone ViewTarget target = new ViewTarget(getView()); ShowcaseView.ConfigOptions co = new ShowcaseView.ConfigOptions(); //can only dismiss by button click co.hideOnClickOutside = false; //show only once co.shotType = ShowcaseView.TYPE_ONE_SHOT; sv = ShowcaseView.insertShowcaseView(target, getActivity(), R.string.showcase_detail_title, R.string.showcase_detail_message,co); // remove circle sv.setShowcaseIndicatorScale(0); // set black background sv.setBackgroundColor(getResources().getColor(R.color.black)); // make background a bit transparent sv.setAlpha(0.9f); // show PullToRefreshGesture sv.animateGesture(0, py / 2, px, py / 2); }
El diseño utilizado:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <mypackage.PullToRefresh.PullToRefreshListView android:id="@id/android:list" android:layout_height="match_parent" android:layout_width="match_parent" android:divider="@android:color/transparent" android:dividerHeight="10dp" android:layout_margin="10dp"/> </LinearLayout>
- ¿Hay una biblioteca de diseño / overlay / showcase de Android Material Design onboarding / tutorial?
- ¿Alternativa a la biblioteca showCase para los tutoriales de usuario de la aplicación?
- El buttonLayoutParams de ShowCaseView de Android no funcionará
- ¿Cómo utilizar el constructor ShowCaseView v5 con fragmentos?
- errores de método no definido después de agregar una biblioteca:
- Cómo crear una superposición de información en Android
- Showcaseview NoClassDefFoundError
- cómo usar ShowcaseView en gridView o listView
Lo resolví de esta manera:
- Para ejecutarlo sólo una vez después de la instalación he seguido este post .
- Para repetir la animación he utilizado el código proporcionado en este post .
Ahora, el ShowcaseView sólo aparece una vez después de la instalación y la animación de gestos se muestra siempre que no se haga clic en el botón.
/** * Set the ShowcaseView to only ever show once. * * @param shotId a unique identifier (<em>across the app</em>) to store * whether this ShowcaseView has been shown. */ public Builder singleShot(long shotId) { showcaseView.setSingleShot(shotId); return this; }
Para repetir la animación con los tiempos:
sv.setRepeatCount(number);
Para infinito:
sv.setRepeatCount(Animation.INFINITE); sv.setRepeatMode(Animation.INFINITE);
Y en su diseño:
android:repeatMode="reverse"
- Cabeza de chat Haga clic en eventos
- El diseño de la actividad parpadea después de terminar () se llama