2016-07-17 23 views
2

Was ich versuche zu tun ist, die Textansicht um die Bildansicht so zu wickeln, dass der Text nicht nur auf der linken oder rechten Seite des Bildes ist. Ist es möglich, dies über XML zu tun? Da es sich um einen Popup-Dialog mit einem Bild handelt, ist es sehr mühsam, Code zu schreiben, da es sich um mehrere Bilder handelt, je nachdem, auf was sie klicken. Siehe Bild zum Beispiel.Android Textview Wrap Bildansicht

image

<?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" 
android:background="@android:color/background_light"> 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:layout_margin="1dp" 
    android:background="@android:color/darker_gray"> 
    > 
    <ScrollView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

     <RelativeLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" 
      android:layout_margin="20dp"> 

      <Button 
       android:id="@+id/dismiss" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:text="Close" /> 

      <ImageView 
       android:id="@+id/IV1" 
       android:layout_width="100dp" 
       android:layout_height="100dp" 
       android:src="@drawable/IV1" 
       android:layout_below="@+id/dismiss" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="true" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/TV15" 
       android:id="@+id/TV15" 
       android:layout_below="@+id/dismiss" 
       android:layout_toRightOf="@+id/IV1" 
       android:layout_toEndOf="@+id/IV1" 
       android:paddingLeft="5dp" 
       android:paddingTop="5dp"/> 
     </RelativeLayout> 
    </ScrollView> 
</LinearLayout> 

Antwort

0

Verwendung FrameLayout. Ändern Sie die Reihenfolge von ImageView und TextView, um festzulegen, was an erster Stelle stehen soll.

<FrameLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_centerInParent="true"> 

    <ImageView 
     android:id="@+id/menu_icon" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:src="@mipmap/ic_launcher" /> 

    <TextView 
     android:id="@+id/menu_label" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:lines="1" 
     android:text="this is my sample" /> 
</FrameLayout> 
+0

Ich will sie nicht übereinander, siehe Bild, das ich gerade für mehr Beispiel von dem gepostet habe, was ich versuche zu tun. – Jayce

+0

Ich habe Ihr Problem missverstanden, dieses Projekt könnte Ihnen helfen https://github.com/deano2390/flowtextview –