2014-09-12 10 views
9

Avevo bisogno di implementare un layout simile alla pila di schede di Google Chrome come mostrato di seguito.Layout Android: come implementare un'interfaccia utente simile al mazzo di carte?

Sono disponibili librerie per questo?

enter image description here

+2

Date un'occhiata qui (http://grepcode.com/file/repository.grepcode.com/ java/ext/com.google.android/android-apps/5.L_preview/com/example/android/home/ApplicationsStackLayout.java # ApplicationsStackLayout) Questa è la visualizzazione utilizzata in Android Home Activity – hoomi

+0

@hoomi ApplicationsStackLay out è solo un viewgroup che pone le sue viste figlio uno per uno sia orizzontalmente che verticalmente ... Ho bisogno di un viewgroup che impili le visualizzazioni del bambino come un mazzo di carte più effetti di scorrimento come nel browser Android di Chrome ... Grazie per il link a Schermata iniziale di Android L .... Ma qualche idea su come ottengono le schede di Chrome come le interazioni in questo ?? – user3665376

+0

Hai trovato una soluzione per il tuo problema? Perché sto cercando di implementare la stessa cosa e non sto trovando alcun esempio ... :-( – michoprogrammer

risposta

1

È necessario creare un drawable set personalizzati per ogni aspetto della carta e li usa nel layout. È possibile utilizzare il layout della tabella per questo scopo.

Ad esempio, per mettere uno sfondo con angoli è possibile creare un disegnabile come segue:

Aggiungi nuova risorsa drwabe come segue:

<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle" > 
    <corners android:radius="5dp"/> 
    <stroke android:width="1dp" android:color="choose the color which you want"/> 
    <padding android:top="10dp" android:left="10dp" android:bottom="10dp" 
     android:right="10dp"/> 
</shape> 

creare uno stile personalizzato e utilizzare drawable sopra come sfondo:

<style name="ContactTextView"> 
     <item name="android:background">@drawable/drawableName</item> 
     // add other items 
</style> 

applicare lo stile su ogni elemento nel vostro layout

+0

Grazie..Perché non si tratta solo di impostare le proprietà dell'interfaccia utente delle viste. Chrome ha un gesti utente molto elegante per interagire con le schede ... ad esempio: l'utente può scorrere l'intera vista con spostamenti variabili per ogni elemento, cioè l'intera lista si comporta come un mazzo di carte fisico e penso che ci sia la principale sfida di implementazione – user3665376

1

Utilizzare RecyclerView con il proprio LayoutManager. Il layoutmanager può impilarlo in questo modo. Per implementare il comportamento (come espandere un elemento al clic) è necessario più codice. Non riesco a trovare un progetto open source che abbia questo.

Date un'occhiata qui per aiuto:

http://wiresareobsolete.com/2014/09/building-a-recyclerview-layoutmanager-part-1/

http://wiresareobsolete.com/2014/09/recyclerview-layoutmanager-2/

http://wiresareobsolete.com/2015/02/recyclerview-layoutmanager-3/

Problemi correlati