2016-03-16 1 views
2

J'ai donc créé avec succès un MvxGridView avec plusieurs éléments avec leurs images respectives, certains d'entre eux ont une image et d'autres non. Le problème est que lorsque la vue est affichée, les apparences se chevauchent verticalement.Les éléments MvxGridView se chevauchent verticalement

C'est la mise en page de la grille:

<Mvx.MvxGridView 
     android:layout_marginTop="5dp" 
     android:id="@+id/cav_gridArticulos" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:gravity="center" 
     android:numColumns="3" 
     android:verticalSpacing="4dp" 
     android:horizontalSpacing="4dp" 
     android:stretchMode="columnWidth" 
     android:fastScrollEnabled="true" 
     local:MvxBind="ItemsSource Articulos" 
     local:MvxItemTemplate="@layout/catalogoarticulos_itemst" /> 

ItemTemplate:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:local="http://schemas.android.com/apk/res-auto" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical"> 
    <Mvx.MvxImageView 
     android:layout_weight="1" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="@drawable/edit_text_border" 
     android:layout_gravity="center" 
     local:MvxBind="ImageUrl UrlImagen" 
     android:layout_marginTop="5dp" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="5dp" 
     android:scaleType="fitXY" /> 
    <LinearLayout 
     android:layout_weight="4" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Nombre" 
      android:layout_centerInParent="true" 
      local:MvxBind="Text IdGrupoProducto" 
      android:layout_gravity="center" 
      android:layout_marginTop="5dp" /> 
     <EditText 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textSize="14sp" 
      android:background="@android:color/transparent" 
      android:layout_centerInParent="true" 
      android:layout_marginTop="5dp" 
      android:layout_marginBottom="5dp" 
      android:layout_marginLeft="20dp" 
      android:layout_marginRight="20dp" 
      android:singleLine="false" 
      android:focusable="false" 
      android:layout_gravity="center" 
      android:inputType="textMultiLine|textNoSuggestions" 
      android:scrollHorizontally="true" 
      local:MvxBind="Text Descripcion" /> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerInParent="true" 
      local:MvxBind="Text PrecioUnitario" 
      android:textStyle="bold" 
      android:layout_gravity="center" /> 
    </LinearLayout> 
</LinearLayout> 

Pourquoi est-ce qui se passe?

This is how it looks

enter image description here

+0

Postez l'article xml –

Répondre

0

Ainsi, la solution facile est de définir explicitement la hauteur de la mise en page. Pour différentes images de format d'image j'ai utilisé l'android: scaleType = "centerInside". Le seul problème serait si j'utilise un autre appareil et les changements de taille de l'écran. Mais ça fonctionne bien pour le moment.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:local="http://schemas.android.com/apk/res-auto" 
    android:layout_width="fill_parent" 
    android:layout_height="350dp" 
    android:orientation="vertical" 
     android:background="@drawable/edit_text_border"> 
    <Mvx.MvxImageView 
     android:layout_weight="1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:maxHeight="180dp" 
     android:layout_gravity="center" 
     local:MvxBind="ImageUrl UrlImagen; DefaultImagePath DefaultImage" 
     android:layout_marginTop="5dp" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="5dp" 
     android:scaleType="centerInside" 
     android:adjustViewBounds="true" />