usar una presentaciones presentacion power pasar para hacer diapositiva controlar como celular app android facebook android-side-navigation

android - presentaciones - como pasar una presentacion de power point a mi celular



Diapositiva de estilo de Facebook de Android (25)

Hola, esta es la mejor aplicación de demostración de muestra que proporciona un menú de diapositivas como facebook Revisa el código here

La nueva aplicación de Facebook y su navegación es genial. Solo estaba tratando de ver cómo se puede emular en mi aplicación.

¿Alguien tiene una pista de cómo se puede lograr?

Al hacer clic en el botón superior izquierdo, se muestra la diapositiva de la página y la siguiente pantalla:

Video de Youtube


Aún no puedo comentar sobre la respuesta dada por @Paul Grime, de todos modos he enviado a su proyecto de github la solución al problema del parpadeo ...

Voy a publicar la solución aquí, tal vez alguien lo necesita. Solo necesitas agregar dos líneas de código. El primero debajo de la llamada anim.setAnimationListener:

anim.setFillAfter(true);

Y el segundo después de la llamada a app.layout ():

app.clearAnimation();

Espero que esto ayude :)


Acabo de implementar una vista similar para mi propio proyecto. Puedes comprobarlo here

Aquí está la pantalla de la aplicación de muestra basada en la biblioteca que escribí:

Es fácil usar esta vista personalizada como elemento del diseño XML. Aquí está el ejemplo:

<shared.ui.actionscontentview.ActionsContentView android:id="@+id/content" android:layout_width="match_parent" android:layout_height="match_parent" app:actions_layout="@layout/actions" app:content_layout="@layout/content" />

Si tiene alguna pregunta sobre el uso de la biblioteca de ActionsContentView, puedo escribir un pequeño artículo en el proyecto Wiki.

Algunas ventajas de esta biblioteca:

  • capacidad de deslizar la vista al tacto
  • Es fácil ajustar el tamaño de la barra de acciones en XML.
  • soporte de todas las versiones de Android SDK a partir de 2.0 y hasta

Hay una limitación:

  • Todas las vistas de desplazamiento horizontal no funcionarán en los límites de esta vista

Saludos cordiales, Steven


Android agregó el cajón de navegación. Refiera esto

link


Aquí está la guía de diseño y desarrollo que se encuentra en la documentación oficial de Android, sin necesidad de agregar una biblioteca externa no oficial. Sólo la biblioteca de soporte de Android hará. Encuentra los enlaces aquí.

diseñar y develop .


Aquí está otra biblioteca de código abierto (muy agradable)!

La buena característica de este es que se integra fácilmente con ActionBarSherlock.

Aquí está el enlace del proyecto github

Aquí está el enlace de descarga de Google Play



Como parte de mi biblioteca común de Android (ACL), implementé mi propia barra lateral. Ventajas principales:

  1. La barra lateral puede ajustarse en cualquier posición: izquierda, superior, inferior, derecha
  2. Tanto la vista principal como la vista deslizante son seleccionables
  3. La barra lateral se puede mostrar parcialmente
  4. Los atributos de Stylable para SideBar hacen que sea más fácil cambiar su estilo
  5. Artefacto en repo maven
  6. Parte de una gran biblioteca

Código fuente: https://github.com/serso/android-common/tree/master/views/src/main/java/org/solovyev/android/view/sidebar

Uso: https://github.com/serso/android-common/blob/master/samples/res/layout/acl_view_layout.xml



Creo que la aplicación de Facebook no está escrita en código nativo (por código nativo quiero decir, usando diseños en Android) pero han usado webview para ello y han usado algunas bibliotecas de ui de javascript como sencha . Se puede lograr fácilmente utilizando el marco sencha.


Creo que la biblioteca no menciona:

jfeinstein10 / github

github url: github

  • funciona bien con la barra de acción ActionBarSherlock, que ayuda en la compatibilidad con versiones anteriores .
  • ¡Apoya la diapositiva derecha y no solo desliza el botón!

Después de una búsqueda de varias horas, encontré que la solución de Paul Grime es probablemente la mejor. Pero tiene demasiada funcionalidad en ello. Por lo tanto, puede ser difícil de estudiar para los principiantes. Así que me gustaría proporcionar mi implementación, que proviene de la idea de Paul, pero es más simple y debería ser fácil de leer.

Implementación de la barra de menú lateral usando código java sin XML



Encontré una forma más simple para él y su trabajo. Use el cajón de navegación simple y llame a drawer.setdrawerListner () y use el método mainView.setX () en el método drawerSlide a continuación o copie mi código.

archivo xml

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" > <RelativeLayout android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffff"> <ImageView android:layout_width="40dp" android:layout_height="40dp" android:id="@+id/menu" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_marginTop="10dp" android:layout_marginLeft="10dp" android:src="@drawable/black_line" /> </RelativeLayout> <RelativeLayout android:id="@+id/left_drawer" android:layout_width="200dp" android:background="#181D21" android:layout_height="match_parent" android:layout_gravity="start" > </RelativeLayout> </android.support.v4.widget.DrawerLayout>

archivo java

public class MainActivity extends AppCompatActivity { DrawerLayout drawerLayout; RelativeLayout mainView; ImageView menu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); menu=(ImageView)findViewById(R.id.menu); drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mainView=(RelativeLayout)findViewById(R.id.content_frame); menu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { drawerLayout.openDrawer(Gravity.LEFT); } }); drawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() { @Override public void onDrawerSlide(View drawerView, float slideOffset) { mainView.setX(slideOffset * 300); } @Override public void onDrawerOpened(View drawerView) { } @Override public void onDrawerClosed(View drawerView) { } @Override public void onDrawerStateChanged(int newState) { } }); } }

Gracias



He estado jugando con esto los últimos días y he encontrado una solución que es bastante sencilla al final, y que funciona antes de Honeycomb. Mi solución fue animar la Vista que quiero deslizar ( FrameLayout para mí) y escuchar el final de la animación (en cuyo punto se desplaza la posición izquierda / derecha de la Vista). He pegado mi solución aquí: Cómo animar la traducción de una vista


He implementado esto con AbsoluteLayout y un simple controlador de diapositivas que mueve la vista a un desplazamiento negativo para ocultar.

Si alguien está interesado, puedo limpiar el código / diseño y publicar. Sé que AbsoluteLayout está en desuso, pero fue una implementación muy sencilla. Vista izquierda / Vista derecha, y cuando se desliza hacia afuera, simplemente mueva la vista izquierda desde un desplazamiento -X al ancho del dispositivo, lo que quiera que se muestre de la Vista derecha


He implementado la navegación deslizante tipo facebook en este proyecto de biblioteca .

Puede integrarlo fácilmente en su aplicación, su interfaz de usuario y su navegación. Deberá implementar solo una Actividad y un Fragmento, informar a la biblioteca al respecto, y la biblioteca proporcionará todas las animaciones y la navegación deseadas.

Dentro del repositorio puede encontrar una demo-proyecto, con cómo usar el lib para implementar la navegación tipo facebook. Aquí está el video corto con el registro del proyecto de demostración .

Además, esta biblioteca debería ser compatible con este patrón de barra de acción, ya que se basa en transacciones de actividades y en las animaciones de traducción (no en transacciones de fragmentos y vistas personalizadas).

En este momento, el mayor problema es hacer que funcione bien para la aplicación, que admite tanto el modo vertical como el horizontal. Si tiene algún comentario, por favor envíelo a través de github.

Todo lo mejor,
Alex


Hice un resumen de una implementación existente y la convirtió en un proyecto de biblioteca más una aplicación de ejemplo. También se agregó el análisis XML, así como la detección automática de una barra de acción posiblemente presente, por lo que funciona con la barra de acción nativa y de apoyo, como ActionBarSherlock.

¡Este también desliza la barra de acción!

Todo esto es un proyecto de biblioteca junto con una aplicación de ejemplo y se describe en Un menú deslizante para Android como Google y aplicaciones de Facebook . Gracias a scirocco por la idea inicial y el código!


La aplicación de Android de Facebook es posiblemente construir con Fragments . El menú es un Fragmento, la Actividad en profundidad (Noticias / Eventos / Amigos, etc.) es el otro Fragmento. Básicamente, una tableta ''master & detail'' layout en un teléfono.


No vi al asombroso SimonVT / android-menudrawer mencionado en ninguna de las respuestas anteriores. Así que aquí hay un enlace

https://github.com/SimonVT/android-menudrawer

Es muy fácil de usar y puedes ponerlo en la izquierda, derecha, arriba o abajo. Muy bien documentado con código de muestra y licencia Apache 2.0.


Para información, ya que la biblioteca de compatibilidad comienza con 1.6 y esta aplicación de Facebook también se ejecuta en dispositivos con Android 1.5, no se pudo hacer con Fragmentos.

La forma en que podría hacerlo es: Cree una actividad "base" BaseMenuActivity donde coloque toda la lógica de onItemClickListener para su lista de menú y defina las 2 animaciones ("abrir" y "cerrar"). Al final / comienzo de las animaciones, muestra / oculta el diseño de BaseMenuActivity (llamémoslo menu_layout). El diseño de esta actividad es simple, es solo una lista con elementos + una parte transparente a la derecha de su lista. Se podrá hacer clic en esta parte y su ancho será el mismo que su "botón de movimiento". Con eso, podrás hacer clic en este diseño para iniciar la animación y dejar que content_layout se deslice hacia la izquierda y tomar toda la pantalla. Para cada opción (es decir, el elemento de la lista del menú), crea una "ContentActivity" que extiende la BaseMenuActivity. Luego, cuando hace clic en un elemento de la lista, inicia su Actividad de Contenidos de Elementos Seleccionados con el menú visible (que cerrará tan pronto como comience su actividad). Los diseños para cada ContentActivity son FrameLayout e incluyen el y. Solo necesita mover content_layout y hacer que menu_layout sea visible cuando lo desee.

Esa es una manera de hacerlo, y espero haber sido lo suficientemente claro.



Voy a hacer algunas conjeturas audaces aquí ...

Supongo que tienen un diseño que representa el menú que no es visible. Cuando se pulsa el botón de menú, animan el diseño / vista en la parte superior para apartarse del camino, y simplemente permiten la visibilidad del diseño del menú. No he pensado en esto causando ningún tipo de problemas de índice z en las vistas, o cómo controlan eso.


Yo mismo he jugado con esto, y la mejor manera de encontrarlo fue usar un FrameLayout y colocar un HorizontalScrollView (HSV) personalizado en la parte superior del menú. Dentro del HSV están sus vistas de aplicación, pero hay una vista transparente como el primer elemento secundario. Esto significa que, cuando el HSV tiene un desplazamiento de desplazamiento cero, el menú se mostrará (y aún se podrá hacer clic de forma sorprendente).

Cuando se inicia la aplicación, desplazamos el HSV al desplazamiento de la primera Vista visible de la aplicación, y cuando queremos mostrar el menú, retrocedemos para revelar el menú a través de la Vista transparente.

El código está aquí, y los dos botones inferiores (llamados HorzScrollWithListMenu y HorzScrollWithImageMenu) en la actividad de inicio muestran los mejores menús que podría encontrar:

Demostración del menú deslizante de Android

Captura de pantalla del emulador (desplazamiento medio):

Captura de pantalla del dispositivo (desplazamiento completo). Tenga en cuenta que mi icono no es tan ancho como el icono de menú de Facebook, por lo que la vista de menú y la vista de ''aplicación'' no están alineadas.