2017-10-15 62 views
3

我在一个ConstraintLayout中有三个TextViews,边距使它们全部保持在屏幕的中心。出于某种原因,TextViews中的文本被提前打包,即使第一行仍然有空间。以下是布局应该看起来像预览:为什么我的TextView在ConstraintLayout早期包装?

enter image description here

这里是运行时,它如何实际上看起来:

enter image description here

你可以看到在额外的空间TextView的右侧,文本可以放在第一行。请记住设备和预览都适用于Nexus 5X。

下面是此布局的XML:

<android.support.constraint.ConstraintLayout 
    android:id="@+id/bullet_holder" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_marginEnd="45dp" 
    android:layout_marginLeft="45dp" 
    android:layout_marginRight="45dp" 
    android:layout_marginStart="45dp" 
    app:layout_constraintBottom_toBottomOf="parent" 
    app:layout_constraintLeft_toLeftOf="parent" 
    app:layout_constraintRight_toRightOf="parent" 
    app:layout_constraintTop_toBottomOf="@+id/setup_intro_subheader" 
    app:layout_constraintVertical_bias="0.23000002"> 

    <ImageView 
     android:id="@+id/setup_intro_bullet_first" 
     style="@style/TextAppearance.AppCompat.Headline" 
     android:layout_width="4dp" 
     android:layout_height="4dp" 
     android:baseline="7dp" 
     android:src="@drawable/circle" 
     app:layout_constraintBaseline_toBaselineOf="@+id/setup_intro_bullet_first_text" 
     app:layout_constraintLeft_toLeftOf="parent" /> 

    <TextView 
     android:id="@+id/setup_intro_bullet_first_text" 
     style="@style/TextAppearance.AppCompat.Subhead" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="6dp" 
     android:layout_marginStart="6dp" 
     android:text="@string/setup_intro_benefit_notification" 
     android:textColor="@android:color/white" 
     app:layout_constraintLeft_toRightOf="@+id/setup_intro_bullet_first" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toTopOf="parent" /> 

    <ImageView 
     android:id="@+id/setup_intro_bullet_second" 
     style="@style/TextAppearance.AppCompat.Headline" 
     android:layout_width="4dp" 
     android:layout_height="4dp" 
     android:baseline="7dp" 
     android:src="@drawable/circle" 
     app:layout_constraintBaseline_toBaselineOf="@+id/setup_intro_bullet_second_text" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toLeftOf="@+id/setup_intro_bullet_second_text" /> 

    <TextView 
     android:id="@+id/setup_intro_bullet_second_text" 
     style="@style/TextAppearance.AppCompat.Subhead" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="6dp" 
     android:layout_marginStart="6dp" 
     android:layout_marginTop="20dp" 
     android:text="@string/setup_intro_benefit_backlog" 
     android:textColor="@android:color/white" 
     app:layout_constraintLeft_toRightOf="@+id/setup_intro_bullet_second" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toBottomOf="@+id/setup_intro_bullet_first_text" /> 

    <ImageView 
     android:id="@+id/setup_intro_bullet_third" 
     style="@style/TextAppearance.AppCompat.Headline" 
     android:layout_width="4dp" 
     android:layout_height="4dp" 
     android:baseline="7dp" 
     android:src="@drawable/circle" 
     app:layout_constraintBaseline_toBaselineOf="@+id/setup_intro_bullet_third_text" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toLeftOf="@+id/setup_intro_bullet_third_text" /> 

    <TextView 
     android:id="@+id/setup_intro_bullet_third_text" 
     style="@style/TextAppearance.AppCompat.Subhead" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="6dp" 
     android:layout_marginStart="6dp" 
     android:layout_marginTop="20dp" 
     android:text="@string/setup_intro_benefit_browser" 
     android:textColor="@android:color/white" 
     app:layout_constraintLeft_toRightOf="@+id/setup_intro_bullet_third" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toBottomOf="@+id/setup_intro_bullet_second_text" /> 

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

@pskink Min SDK是15,目标SDK是26,设备和布局预览是26 –

回答

1

对于您的每一个文本视图,设置如下:

android:breakStrategy="simple" 

android:breakStrategy

这里更深层次的问题是设计师为什么默认情况下显示与仿真器/设备不同的东西?

相关问题