我有這樣的佈局(我已經刪除某些屬性,因爲他們真的沒關係,完全示範項目是here):TextView的工作錯breakStrategy =「平衡」和layout_width =「WRAP_CONTENT」
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content" (* this is important)
android:layout_height="wrap_content"
android:breakStrategy="balanced" (* this is important)
android:text="@string/long_text" />
</LinearLayout>
文本long_text
很長,所以它會分開幾行。
兩條重要線是android:layout_width="wrap_content"
和android:breakStrategy="balanced"
。
我預計TextView
會根據實際的文本寬度計算寬度,但它不會。
是否有人知道如何解決這一問題?
UPDATE
屬性android:breakStrategy="balanced"
僅適用於API 23
高。在我的示例中,文本需要3行,而balanced
策略使每行大致相同的寬度。
我預計在這種情況下,視圖本身的寬度將與最長的一行相同。
我正在尋找任何解決方法。我需要像環聊聊天中的解決方案。我無法弄清楚它是如何工作的。
更新2
不幸的是,公認的答案並不與RTL文本。
怎麼辦你的意思是'我希望TextView會根據實際的文本寬度來計算寬度,但它不會' Als o你的實際看起來與本應該[像這樣]不同(https://imagebin.ca/v/38OTigaIafpF) – shadygoneinsane
我已更新問題。 –
@Oleksii Kropachov如果你期望突破線條,可以說它比1.5線更長..所以你的預期輸出是什麼? –