2012-07-30 4 views
6

Supposons que j'ai un fichier de mise en page structuré comme celui-ci:android: animateLayoutChanges ne fonctionneront pas dans la disposition des parents

<LinearLayout android:id="@+id/main" android:orientation="vertical" android:animateLayoutChanges="true"> 
    <EditText> 

    <TextView android:id="@+id/header1"> 
    <LinearLayout android:id="@+id/insertionPoint" android:orientation="vertical" android:animateLayoutChanges="true"> 
    </LinearLayout> 

    <TextView android:id="@+id/header2"> 
</LinearLayout> 

Je veux ajouter dynamiquement des champs de texte à la mise en page insertionPoint et je voudrais voir une animation les éléments en dessous (dans ce cas, header2) glissent vers le bas.

L'utilisation de android:animateLayoutChanges n'anime que les éléments de la disposition insertionPoint, donc il n'y a pas d'animation pour header2. Que devrais-je faire? Juste pour être plus clair: ce que je voudrais faire ici, c'est quelque chose comme les animations que nous pouvons voir dans l'application People dans ICS lorsque nous ajoutons plus de champs, comme des numéros de téléphone, à un contact.

Merci!

Répondre

2

L'API 16 a ajouté le type d'animation LayoutTransition.CHANGING, mais il est désactivé par défaut.

Pour activer:

LinearLayout linearLayout = (LinearLayout) findViewById(R.id.main); 
linearLayout.getLayoutTransition().enableTransitionType(LayoutTransition.CHANGING); 

belle vidéo de DevBytes: https://www.youtube.com/watch?v=55wLsaWpQ4g

Questions connexes