3

我需要顯示TextView中的所有數據,它必須水平佔用所有可用空間並垂直包含所有數據(這對於不同的屏幕大小或設備方向是必需的)。Android ConstraintLayout wrap_content不顯示所有內容

但它並不採取必要的垂直區域:

screen here

它是一個bug或者有辦法解決我的問題?雖然我只是使用LinearLayout,但沒有這樣的問題。

我的XML:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="com.example.u_m0uk4.fortest.MainActivity"> 

    <TextView 
     android:id="@+id/textView" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginEnd="16dp" 
     android:layout_marginLeft="132dp" 
     android:layout_marginRight="16dp" 
     android:layout_marginStart="132dp" 
     android:layout_marginTop="16dp" 
     android:text="Android («Андро́ид»[ком. 1]) — операционная система для смартфонов, интернет-планшетов, электронных книг, цифровых проигрывателей, наручных часов, игровых приставок, нетбуков, смартбуков, очков Google[2], телевизоров[3] и других устройств. В будущем планируется поддержка автомобилей[4] и бытовых роботов. оследствии Google инициировала создание альянса Open Handset Alliance (OHA), который сейчас занимается поддержкой и дальнейшим развитием платформы. Android позволяет создавать Java-приложения, управляющие устройством через разработанные Google библиотеки. Android Native Development Kit позволяет портировать библиотеки и компоненты приложений, написанные на Си и других языках.123456789123456789-1234567890" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toTopOf="parent" 
     app:layout_constraintBottom_toBottomOf="parent" 
     android:layout_marginBottom="16dp" /> 

</android.support.constraint.ConstraintLayout> 
+0

如果我得到了您的問題,文本顯示在左側,您需要顯示在中心。如果是的話,你可以刪除'android:layout_marginStart =「132dp」' –

+0

@DevendraSingh謝謝你的回覆,但這個餘地是必要的,例如。我可以刪除marginStart和marginLeft,但是如果有很多文本,它無論如何都不適合TextView,儘管垂直空間仍然存在。問題是 - 爲什麼不縱向拉伸領域? –

回答

0

修正了9版本。現在它按我的需要工作。

0

請參考以下鏈接,我希望它會爲你工作。

https://github.com/grantland/android-autofittextview

+0

謝謝,但我需要相同的文字大小。在我的應用程序中有很多TextViews,他們必須具有相同大小的文本。 –

+0

@VladimirEtc。然後你必須設置高度和寬度wrap_content。並且您已刪除所有邊距。如果你能給我一個XML文件比我會改變它,並回饋給你解決方案,如果我可以。 –

+0

如果我設置高度和寬度wrap_content,那麼寬度將被關閉。但在LinearLayout中是有效的。上面顯示的所有代碼,只需將其放入ConstraintLayout即可。 –