Sto cercando di creare un fumetto per una chat room. Ciascuno dei fumetti ha il layout xml allegato.Android ImageView non corrisponde_parente all'interno di FrameLayout sotto GingerBread
sto raggiungere questo impostando il textView a wrap_content, fumetto ImageView a match_parent e la frame_layout a wrap_content. In modo che l'immagine speech_bubble dietro il testo ridimensiona in base alla quantità di testo nella bolla.
ho impostare la larghezza del textView per abbinare genitore e l'altezza a wrap_content e per qualche motivo, si funziona perfettamente come richiesto Ice Cream Sandwich (Android 4.1). Tuttavia in Gingerbread il fumetto interno imageView non viene ridimensionato a match_parent in modo che il testo possa adattarsi perfettamente all'interno della bolla. In Gingerbread l'immagine internaView rimane sempre della stessa dimensione, indipendentemente dal testo e dal testo fuoriuscita dalla bolla. Anche se il frameLayout si espande per wrap_content, il ImageView non match_parent come si suppone.
Qualche idea sul perché questo sta accadendo? C'è un altro parametro che posso impostare tramite xml o un metodo che posso chiamare a livello di codice per risolvere questo problema?
Grazie!
comportamento corretto in ICS:
Comportamento non corretto in GingerBread: Layout Incorrect Behavior in GingerBread
XML:
<merge xmlns:android="http://schemas.android.com/apk/res/android">
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/speech_bubble_framelayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@color/color_transparent"
android:layout_toRightOf="@id/message_user_imageView">
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/message_background_imageview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="5dp"
android:scaleType="fitXY"
android:layout_centerInParent="true"
android:textColor="@color/color_brown_mud"
android:background="@drawable/chat_bubble_flipped"
/>
<TextView
android:id="@+id/message_textView"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:maxEms="10"
android:background="@color/color_transparent"
android:textColor="@color/color_brown_uiDesign_pallete"
android:textSize="15sp"
android:textStyle="bold"
android:gravity="center_horizontal"
android:text="Message"
android:padding="5dp"
android:layout_marginLeft="25dp"
android:layout_marginRight="20dp"
android:layout_marginTop="15dp"
android:layout_marginBottom="15dp"
/>
</FrameLayout>
</merge>
Questo ha risolto il problema. Ho usato alignBottom e alignRight con un po 'di padding. Grazie! – Bala