La meilleure façon de poser cette question est de fournir un exemple, si elle est ici:Calcul de la taille d'une vue
<ScrollView>
<LinearLayout
android:id="@+id/main"
android:orientation="vertical"
>
<TextView
android:id="@+id/some_text"
/>
<LinearLayout
android:id="@+id/stretch_me"
/>
<Button
android:id="@+id/i_can_toggle"
/>
<TextView
android:id="@+id/toggle_me"
android:visibility="gone"
/>
<Button
android:id="@+id/finished"
/>
</LinearLayout>
</ScrollView>
Cela semble assez simple, mais tenir sur ...
1) Je voudrais que la disposition stretch_me prenne tout l'espace restant sur l'écran (et j'ai besoin de sa taille pour pouvoir le remplir dynamiquement à partir du code)
2) Je ne peux pas changer main à RelativeLayout parce que je voudrais bascule toggle_me entre gone et visible en utilisant le i_can_toggle mais doit garder la taille strech_me le même que précédemment
3) Avant de changer toggle_me de visible, il doit y avoir aucun défilement et fini bouton doit être placé au bas de l'écran
Maintenant, j'ai essayé beaucoup de choses et l'approche la plus prometteuse est celle-ci avec un peu de codage (je pensais à définir la taille stretch_me du code), mais je n'ai pas pu obtenir la taille de la vue depuis ma méthode onCreate() (screen_height - view_height = espace restant).
Des idées?
Merci!
Une fois que vous avez vues à l'intérieur d'un ScrollView il n'y a vraiment pas un concept utile, « le reste de la taille de l'écran » plus. stretch_me va s'étirer suffisamment pour convenir à tous ses enfants et le ScrollView va permettre le défilement au besoin pour afficher tout le contenu. Êtes-vous sûr de vouloir que cette mise en page entière soit défilable en tant qu'unité unique ou essayez-vous d'épingler des vues en bas de l'écran pendant que le reste du contenu défile dans la zone située au-dessus? – adamp