J'ai un wich de mise en page est niché comme ceci:android - Réglage de la hauteur ScrollView dynamique
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ScrollView
android:id="@+id/scrollAplicacoes"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:id="@+id/titulo"
android:layout_width="match_parent"
android:layout_height="60dp"
android:fontFamily="Arial"
android:lineSpacingExtra="-5dp"
android:text="@string/titulo_aplicacao"
android:textColor="#3c3c3c"
android:textSize="25sp"
android:textStyle="bold"/>
<ImageView
android:id="@+id/btnAplicacaoUm"
android:layout_width="match_parent"
android:layout_height="150dp"
android:onClick="selectAplicacao"
android:src="@drawable/aplicacoes_item1" />
<ImageView
android:id="@+id/btnAplicacaoDois"
android:layout_width="match_parent"
android:layout_height="150dp"
android:layout_marginTop="10dp"
android:onClick="selectAplicacao"
android:src="@drawable/aplicacoes_item2" />
<ImageView
android:id="@+id/btnAplicacaoTres"
android:layout_width="match_parent"
android:layout_height="150dp"
android:layout_marginTop="10dp"
android:onClick="selectAplicacao"
android:src="@drawable/aplicacoes_item3" />
</LinearLayout>
</ScrollView>
<LinearLayout
android:id="@+id/menuFixo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@drawable/faixa_below" >
<ImageView
android:id="@+id/belowHome"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:contentDescription="@string/descBtnHome"
android:layout_marginTop="5dp"
android:src="@drawable/below_home_sel" />
<ImageView
android:id="@+id/belowCalculadora"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:onClick="abreCalculadora"
android:contentDescription="@string/descBtnCalculadora"
android:layout_marginTop="5dp"
android:src="@drawable/below_calc" />
<ImageView
android:id="@+id/belowProdutos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/descFaixaProdutos"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:src="@drawable/below_produtos" />
</LinearLayout>
</RelativeLayout>
Le problème est que l'LinearLayout en dehors du ScrollView, à l'extrémité est fixée sur le fond, et le défilement est placé derrière. J'ai donc besoin que le défilement soit la hauteur de l'écran moins cette hauteur de LinerLayout fixe moins une petite marge.
J'ai essayé ceci:
(...)
int scrollFInalHeight = scrollHeight - fixedMenuHeight - 10;
ViewGroup.LayoutParams param = new ViewGroup.LayoutParams(scrollStartWidth, scrollFInalHeight);
scroll.setLayoutParams(param);
Mais les application se bloque quand je commence à cette activité. Ce code Java est dans la méthode public void onWindowFocusChanged (boolean hasFocus).
Des suggestions? Merci d'avance! ;)
En effet, il est logique, mais il retourne l'erreur ci-dessous, même si c'est l'ID correct pour le LinearLayout ci-dessous. erreur: Erreur: Aucune ressource trouvée correspondant au nom donné (à 'layout_above' avec la valeur '@ id/menuFixo'). –
Ouais, ma mauvaise. Ajoutez le signe +! Cela arrive parce que le compilateur lit les identifiants depuis le haut. :) – Enrichman
Merci! C'est juste bien maintenant. Mais, ce signe + n'est-il pas utilisé pour définir l'identifiant, pas pour sélectionner l'identifiant? C'est un de ces trucs "je ne sais pas pourquoi mais ça marche" pour moi. –