Mettre ImageView sur le bas de l'écran
Je suis en train de mettre de l'ImageView sur le fond de la mise en page avec XML suivant:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#EEEEEE"
android:gravity="center"
android:orientation="horizontal" >
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:src="@drawable/photo" />
</LinearLayout>
</LinearLayout>
Je suis en suivant les instructions trouvées ici http://sandipchitale.blogspot.co.uk/2010/05/linearlayout-gravity-and-layoutgravity.html
Seule différence est que j'utilise ImageView au lieu de Bouton comme ici:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="horizontal" >
<Button
android:id="@+id/Button03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:text="bottom" >
</Button>
</LinearLayout>
</LinearLayout>
Qui met le bouton sur l'endroit prévu:
Malheureusement, ce n'est pas le cas dans mon XML sur le sommet de la poste. L'ImageView n'est pas placée sur le bas du Bouton dans la référence XML est.
Des idées pourquoi ça arrive ?
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser RelativeLayout au lieu de LinearLayout et utiliser le paramètre
android:layout_alignParentBottom = "true"
.EDIT: Essayez de donner layout_height et layout_width comme wrap_content pour votre LinearLayout qui détient votre ImageView.
Ou il pourrait être que l'image que vous utilisez a un espace supplémentaire au-dessus et au-dessous.
Mise à JOUR:
Le problème est avec la taille de l'image. Il est beaucoup plus grand que la taille de l'écran. Je vous suggère de programmation pour lire la taille de l'écran de l'appareil avec le code ci-dessous:
et définissez la hauteur et la largeur de imageView par programme comme ci-dessous:
Vous devez modifier un paramètre dans ImageView lui-même, pour être précis
android:scaleType="fitEnd"
sur votre ImageView.Les autres réponses semblent être des solutions de contournement, y compris votre propre réponse. Ce n'est pas un problème avec une mise en page, mais où à l'intérieur de l'ImageView l'image est chargée lorsque les dimensions de l'image et de l'écran ne sont pas similaires, (c'est à dire le rapport largeur/hauteur est très différent). Par défaut, elle serait de charger l'image dans le milieu de l'ImageView.
Essayez ceci à l'intérieur relatif de la mise en page
testé & fonctionne comme prévu
vous n'avez pas inclure android:layout_gravity="bas de ligne" dans votre imageview.
J'ai redimensionné la photo de la taille de la largeur de 2560 à la largeur 270 et enfin ImageView est allé vers le bas.