2011-01-25 45 views
2

我对textviews一个问题..优先表中的行内textviews

我有代码的一个表行,其包括一个图像视图和两个textviews .. | _ | textview1 textview2。

图像视图有机器人:layout_alignParentLeft =“真” 和第二的TextView有机器人:layout_alignParentRight =“真”

的问题是,当我写在第一个文本视图一个很大的文本,然后它去了第二个textview ..我不想把一个特定的数字作为第一个textview的宽度。任何想法如何在第一个textview中编写大文本并且不覆盖第二个textview?对于textviews优先级?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/mainlayout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:padding="5dip" > 

    <ImageView 
     android:id="@+id/icon" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/icon_code_contact" 
     android:layout_marginRight="5dip" 
     android:layout_alignParentLeft="true" /> 

    <RelativeLayout 
    android:id="@+id/secondlayout" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/icon" > 

    <TextView 
     android:id="@+id/title" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textStyle="bold" 
     android:singleLine="true" /> 

</RelativeLayout> 


<RelativeLayout 
    android:id="@+id/thirdlayout" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_marginRight="25dip" > 

     <TextView 
     android:id="@+id/stamp" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:singleLine="true" /> 



</RelativeLayout> 

</RelativeLayout> 
+0

不知道它是否与问题有关,但两个内部布局似乎是无用的。 – bigstones 2011-01-25 11:19:23

回答

1

问题是你没有给你的中间textview一个正确的限制。一旦删除了两个内部RelativeLayout(并将它们的布局参数移至它们包含的TextView),则可以通过将android:toLeftOf="@id/title"添加到第二个TextView来实现。

+0

感谢您的回答...按我的意愿播放;) – Nikitas 2011-01-25 13:04:39

0

这里是你的问题的解决方案:

<TextView 
     android:id="@+id/text1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="10px" 
     android:text="This is text 1 for testing!"> 
    </TextView> 

    <TextView 
     android:id="@+id/text2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="This is text 2" 
     android:layout_gravity="right" 
     android:layout_marginLeft="10px"> 
    </TextView> 

    </TableRow> 

注:如果超过布局的最大宽度文本2可能转移到下一行。

希望它可以帮助你。让我知道是否可以做得更好。