2014-11-05 84 views
1

我想在其旁邊放置TextView和另一個View。像這樣:如何將視圖放置在TextView的右邊

|        | 
|[TextView][View]    | 
|        | 

TextView可能有長文本。在這種情況下,我想使用省略號,這樣View不會被推出屏幕(或任何佈局包含它們),也不會變形。

|        | 
|[TextView with long...][View]| 
|        | 

所以我想View被旁邊TextViewTextView需要根據需要儘可能多的空間(沒有超過需要),而無需按下View出畫面/容器當文本太長(在這種情況下,我想用省略號來剪切文本)。

我該怎麼做?

我正在考慮計算視圖的位置和大小,但似乎有點複雜。也許有一些更簡單的解決方案。

謝謝!

回答

2

可以使用的LinearLayout與水平方向爲blackbelt建議,但設置寬度爲wrap_content

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

    <TextView 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content" 
     android:maxLines="1" 
     android:ellipsize="end" 
     android:text="unknown sized view" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="fixed sized view"/> 
</LinearLayout> 
+0

謝謝你!這是我尋找的簡單解決方案!我不知道使用權重與wrap_content或match_parent容器的區別。 – 2014-11-06 09:38:00

2

您可以使用橫向LinearLayout,寬度爲math_parent,其中包含兩個孩子。左邊的TextView將有0dp的寬度和weight 1,該視圖的寬度將有wrap_content。對於在端點可以使用android:ellipsize

+0

差不多!在這種情況下,即使當'TextView'文本短時,我也會使用'| [TextView short _______] [View] |'。我想''[TextView short] [View] _______ |'。 – 2014-11-05 22:59:24

+0

讓我們[在聊天中繼續討論](http://chat.stackoverflow。COM /間/ 64357 /討論之間,文斯 - emigh和 - 費蘭 - maylinch)。 – 2014-11-06 00:57:47

0

在TextView的和View的父佈局,設定layout_weightsum = 3

在TextView的,設置layout_weight = 2且在View,layout_weight = 1設定。

無論textview中文本的長度如何,view和textview都會正確呈現。

+0

這樣'TextView'將會是'View'大小的兩倍,而這不是我正在尋找的。我希望'TextView'儘可能多地佔用空間,而'View'在右邊,完全可見並且不會失真。 – 2014-11-05 23:04:16

0

根據developer.android.com上的RelativeLayout.LayoutParams,您可以使用RelativeLayoutandroid:layout_toRightOf,這與您一直在尋找的內容完全相同。

+0

我試過了,但是如果'TextView'太長,'View'沒有剩餘空間,並且看起來像這樣破壞了:'| [TextView with long t ...] [V] |'。 – 2014-11-05 23:02:26

0

你可以嘗試把兩種意見水平的LinearLayout內設置的android:maxWidth爲TextView的,這樣的景觀將留在TextView的右側時,它的短

| [TextView的總之] [查看] _______ |

,並且當它很長時,TextView將只擴展到您設置其最大寬度。

| [TextView with long t ...] [查看] | |

+0

'maxWidth'的值是多少? – 2014-11-06 00:35:29

+0

您應該根據您的設計和屏幕尺寸設置值。 – 2014-11-06 00:38:39

+0

這就是看起來很複雜,所以我想避免,就像我在我的問題中所說的那樣。你有什麼想法如何做到這一點?這些視圖在一個容器中,我不知道右邊的視圖的大小,因爲它裏面有一些文本(實際上是另一個TextView,但我希望它顯示沒有省略號的全文)。 – 2014-11-06 00:46:37

相關問題