2013-03-01 15 views
2

在RelativeLayout中,我有兩個TextView在同一行對齊: 第一個對齊到左側,第二個對齊到右側。 只有在第一個texview過長的情況下,我如何才能將第二個TextView移動到「新行」?如何在新行中移動文本視圖,如果其他文本視圖太長

,這裏是我的應用程序的截圖:

this is a screenshot http://img812.imageshack.us/img812/3466/chatscreenshot.jpg

在第一種情況下

,第一TextView的「東西」和第二(的時間)是對齊的。 在第二種情況下,我想將第二個textview移到第一個下面。

這裏是我的xml文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/relativeView" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingLeft="5dip" 
android:paddingRight="5dip" 
android:paddingTop="5dip" 
android:paddingBottom="5dip" > 

<ImageView 
    android:id="@+id/immagine" 
    android:layout_width="50dp" 
    android:layout_height="50dp" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginRight="10dp" 
    android:src="@drawable/ic_launcher" /> 

<TextView 
    android:id="@+id/nickTextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_toRightOf="@+id/immagine" 
    android:text="Nickname" 
    android:textSize="14dp" /> 

<TextView 
    android:id="@+id/messaggioTextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/nickTextView" 
    android:layout_toRightOf="@+id/immagine" 
    android:text="Messaggio" 
    android:textColor="#333" 
    android:textSize="14dp" /> 

<TextView 
    android:id="@+id/oraText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/nickTextView" 
    android:layout_alignBottom="@+id/nickTextView" 
    android:layout_alignParentRight="true" 
    android:text="TextView" 
    android:textColor="#999" 
    android:textSize="12dip" /> 

<TextView 
    android:id="@+id/dataText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/messaggioTextView" 
    android:layout_alignBottom="@+id/messaggioTextView" 
    android:layout_alignParentRight="true" 
    android:text="TextView" 
    android:textColor="#999" 
    android:textSize="12dip" /> 

感興趣textviews是messaggioTextView和oraText代碼。

有什麼想法?

+0

其中是你的應用程序的屏幕截圖? – itsrajesh4uguys 2013-03-01 15:25:10

+0

我可以在帖子中看到截圖。鏈接是[鏈接](http://img812.imageshack.us/img812/3466/chatscreenshot.jpg) – Release 2013-03-01 15:26:20

+0

你的問題的解決方案是你需要爲每個textview設置固定的寬度....但不是你想要(移動textview) – Pragnani 2013-03-01 15:28:40

回答

3
<TextView 
    android:id="@+id/messaggioTextView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_toLeftOf="@+id/dataText" 
    android:layout_below="@+id/nickTextView" 
    android:layout_toRightOf="@+id/immagine" 
    android:text="texttextkhgfkdklgfhkldfhghdgkljdlfkjhg;ldf;hhvasdv;svabsab" 
    android:textColor="#333" 
    android:textSize="14dp" /> 


<TextView 
    android:id="@+id/dataText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBottom="@+id/messaggioTextView" 
    android:layout_alignParentRight="true" 
    android:text="TextView" 
    android:textColor="#999" 
    android:textSize="12dip" /> 
+0

謝謝@Janmejoy這是一個問題的解決方案,但我想從左至右擴展信息。在這種情況下,我想轉移texttextview下的時間textview – Release 2013-03-01 15:37:04

+0

@釋放我認爲現在你的問題將得到解決.. – Janmejoy 2013-03-01 15:43:13

+0

現在我有這種情況:[截圖](http://img442.imageshack.us/ img442/22/immaginebt.png),但正如您所看到的,textview並不佔用所有空間,因爲它在oraText文本視圖之前停止。我想要這個設置:如果消息textview太長,然後移動oraText Textview在 – Release 2013-03-01 15:57:12

0

考慮實施的FlowLayout(或使用一個別人做here)爲佈局的文本部分。我知道

0

三路,也許更好的方式存在:
1)加載的HTML文本,並將其設置爲文本視圖(您可以使用HTML風格和...)

String text = "<font color=#cc0029>text 1</font> <font color=#ffcc00>text 2</font>"; 
textView.setText(Html.fromHtml(text)); 

2)在一個文本視圖中加載文本,但爲每個文本部分設置可擴展。
3)創建自定義的TextView類並計算文本的長度,然後如果比你想要的更大的設置另一個文本視圖佈局下面這個

相關問題