Cómo crear un estante como ver en Android?

¿Cómo crear un estante como ver en android que muestran varios libros en cualquier fila? Además, debe tener características horizontales y verticales como la aplicación moon + reader tiene.

Puedo escribir una vista de estantería que se mueve horizontalmente pero no funciona completamente. Utilicé un archivo de xml para los artículos de la visión que incluyeron la imagen, el texto y el botón. Escribí una clase que extiende AdapterView para crear un ListView personalizado que llamé "shelf view" . Desafortunadamente, mi programa muestra una fila y no puedo usarla para varias filas.

Introduzca aquí la descripción de la imagen

Última actualización: Ahora, puedo detectar una nueva forma de crear shelf-view mejor que la solución anterior. Lo describí en CodeProject

Por cierto, en esta aplicación he utilizado dos clases:

  • HorizontalListView Clase que extiende el AdapterView. Se descargó de GitHub

  • El uso de la biblioteca de Quaere casi igual que Linq2Object en .Net. Puede descargarlo aquí .


Abr 22 '12:

Hay algunas maneras de implementar la vista de estante que tiene dos características (desplazamiento horizontal y vertical). Trato de escribir un programa que se puede ejecutar dinámicamente. Esta aplicación de ejemplo tiene un archivo XML y una clase java showShelfView .

Para que pueda ver mi aplicación:

archivo XML principal: Primero, agrega el siguiente código en main.XML

 <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/sclView"> <TableLayout android:id="@+id/tblLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="0dp"> </TableLayout> </ScrollView> 

showShelfView Clase: Inner TableLayout agrega varios horizontalScroll igual a número de filas. También interior cualquier TableRow añadir imagen.

No olvide establecer una imagen de estante para el fondo de Row:

Introduzca aquí la descripción de la imagen

 public class showShelfView extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); int numRow = 4; int numCol = 8; TableLayout tblLayout = (TableLayout) findViewById(R.id.tblLayout); for(int i = 0; i < numRow; i++) { HorizontalScrollView HSV = new HorizontalScrollView(this); HSV.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); TableRow tblRow = new TableRow(this); tblRow.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); tblRow.setBackgroundResource(R.drawable.bookshelf); for(int j = 0; j < numCol; j++) { ImageView imageView = new ImageView(this); imageView.setImageResource(R.drawable.book1); TextView textView = new TextView(this); textView.setText("Java Tester"); textView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); tblRow.addView(imageView,j); } HSV.addView(tblRow); tblLayout.addView(HSV, i); } } } 
  • Crear una lista de ViewPager: elementos de la lista en blanco
  • Incorporación de ListView dentro de la Galería
  • Android EditText en ListView - teclado
  • Android listview viewholder. Cuándo usarlo, y cuándo no
  • Establezca onItemClick en Adaptador personalizado ListView
  • ¿Cómo hacer el desplazamiento de ListView más lento cuando se utiliza la función smoothScrollToPosition ()?
  • Cómo agregar un hijo a un padre particular en el listview expandible android
  • EditText en ListView sin reciclar entrada
  • Android BaseAdapter con Fragmento
  • Cómo agrandar el elemento central en un listview - android?
  • Cómo obtener vídeo especificado de sdcard en android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.