2010-10-13 13 views
1

J'ai une ListActivity avec évidemment un ListView dessus. Ce ListView se compose de différentes sections, chacune d'entre elles ayant un en-tête.En-têtes statiques sur une vue de liste

Lorsque j'affiche la liste d'éléments à l'utilisateur, le premier en-tête est en haut. Si l'utilisateur défile, l'en-tête est masqué et le reste des éléments est affiché. Je sais comment rendre statique cet en-tête simple, toujours en haut, mais ce que je veux maintenant, c'est que le dernier en-tête affiché soit toujours en haut.

La dernière version de GMail est un bon exemple de ce que je veux. Lorsque vous êtes sur un message, si vous faites défiler, vous verrez toujours cet en-tête de message sur le dessus. Si vous continuez à défiler et à passer au message suivant, lorsque ce nouvel en-tête est sur le point de disparaître à cause de l'action de défilement, il remplacera l'en-tête statique actuel, de sorte que l'en-tête du message sera toujours flottant.

Existe-t-il un exemple ou des conseils sur la façon de l'implémenter?

Merci!

+0

Je cherche et exemple de cela aussi . Avez-vous trouvé un? – Richard

+0

Non, je ne l'ai pas fait. J'ai dû mettre en œuvre les choses différemment – ggomeze

Répondre

1

Je havn't essayé ceci mais je pense que cela pourrait être fait en utilisant un LinearLayout, dans cet exemple un TextView doit rester statique en haut:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
    <TextView 
    android:text="row one" 
    android:textSize="15pt" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1"/> 

    <ListView 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1"/> 

</LinearLayout> 
+0

Merci Laurence pour votre réponse !. J'adorerais c'était si simple mais j'ai peur que ce n'est pas ce que je cherchais. Je cherche quelque chose comme un vrai panneau flottant. Jetez un oeil à l'application Gmail pour un exemple réel. Merci quand même! – ggomeze