2013-08-19 79 views
0

的TextView我已经定义了一个TextView如下:标题与图像

<TextView 
    android:id="@+id/message" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="10dp" 
    android:textSize="16dp" 
    android:textStyle="bold" 
    android:textColor="#000000" 
    android:gravity="center" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="27dp" 
    android:background="@drawable/text_pop_up" 
    android:clickable="true" 
    android:onClick="onClick" /> 

我的最终目标是这个TextView的一分为二。顶部有一个标题(只是文本的字体较大,左边有一个小缩略图)

这是我试图达到的最终设计(红色图像是一个图像)。我怎么会追求呢?

http://i.imgur.com/sdm1fu7.png

回答

2

您可以使用android:drawableLeft/Right/Top/Bottom放置一个可绘制在你的TextView。这是一个TextView和ImageView的颇为相似。要调整绘制对象,你可以使用android:drawablePadding="10dp" FE的位置

<TextView 
    android:id="@+id/message" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:padding="10dp" 
    android:textSize="16dp" 
    android:textStyle="bold" 
    android:textColor="#000000" 
    android:gravity="center" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="27dp" 

    android:drawableLeft="@drawable/text_pop_up" 
    android:drawablePadding="10dp" 

    android:clickable="true" 
    android:onClick="onClick" /> 

对于这个TextView下面的文本,我建议使用第二个TextView来独立格式化这两个文本。

你可以使用的LinearLayout和地点都TextViews作为它的孩子的。

+0

可以在多个绘图资源放在这样一个TextView里面? (即你可以有一个drawableLeft和drawableRight?) – Tonithy

+0

@Tonithy是的,这是可能的,但你会面临一些问题,同时缩放绘图资源,如果它们是不同的大小F.E.的 –

+0

好吧,我明白了。谢谢。 – Tonithy

0

使用Android:drawableLeft属性设置图像的文本框的左侧

0

你可以这样做:

其中
<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/title" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="27dp" 
     android:clickable="true"   
     android:drawableLeft="@drawable/ic_launcher"   
     android:gravity="center_vertical" 
     android:onClick="onClick"   
     android:textColor="#000000" 
     android:text="Sample" 
     android:textSize="16dp" 
     android:textStyle="bold" /> 

    <!-- separator --> 

    <include layout="@layout/separator"/> 

    <TextView 
     android:id="@+id/message" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"   
     android:layout_marginBottom="27dp" 
     android:clickable="true" 
     android:onClick="onClick"   
     android:textColor="#000000" 
     android:text="Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." 
     android:textSize="16dp" 
     /> 

</LinearLayout> 

android:drawableLeft将作为显示ImageView的文本左侧的图像。

而且android:text将显示图像旁边的标题。

第二TextView将显示图像和标题下面的信息。

两者都将被放置在LinearLayout中,orientation被设置为vertical

您可以使用下面的代码作为分隔符2个TextViews之间:

res/separotor.xml 

<?xml version="1.0" encoding="utf-8"?> 
<View xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/separator" 
     android:layout_width="match_parent" 
     android:layout_height="1dip" 
     android:background="@color/black"> 
</View>