3

Мне нужно показать все данные в TextView, он должен занимать все свободное пространство по горизонтали и содержать все данные по вертикали (это необходимо для разных размеров экрана или ориентации устройства).Android ConstraintLayout wrap_content не отображает все содержимое

Но это не займет необходимую вертикальную площадь:

screen here

ли это ошибка или есть способ решить мою проблему? Хотя я просто использую 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. –

Смежные вопросы