我正在建立视图。由于某些原因,它在XML布局编辑器和设备上的视图之间看起来非常不同。
设备在编辑器和物理设备上均为S8。 在设备上,您会注意到一个明显适合该单词的大空间,但是TextView出于某种原因决定将其保留为空。
这是整个视图的XML,“ messageText”是有问题的TextView。
<androidx.constraintlayout.widget.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="wrap_content"
android:background="?selectableItemBackground"
android:clickable="true"
android:orientation="vertical"
android:paddingStart="16dp"
android:paddingTop="6dp"
android:paddingEnd="16dp"
android:paddingBottom="6dp">
<TextView
android:id="@+id/messageUser"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="serif-monospace"
android:textColor="#ffff"
android:textSize="14sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:text="Amy" />
<TextView
android:id="@+id/messageDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:paddingBottom="1dp"
android:textColor="#33FFFFFF"
android:textSize="10sp"
app:layout_constraintBottom_toBottomOf="@+id/messageUser"
app:layout_constraintStart_toEndOf="@id/messageUser"
tools:text="Today at 4:15 PM" />
<TextView
android:id="@+id/messageText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:lineSpacingExtra="8dp"
android:textColor="#B3FFFFFF"
android:textSize="14sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/messageUser"
tools:text="You have to get a new version to get changes, silly girl!" />
怎么了?为什么TextView会留下多余的空间?为什么设备上的文本比编辑器中的文本宽? 我已经开发了很长一段时间的android,这对我来说根本无法解释。
编辑1
现在,我什至不确定Android TextView的工作方式。 当文本变长时,为什么文本对齐方式会发生变化?是相同的文字,只是一些附加内容。
答案 0 :(得分:0)
如果这确实是TextView padding本身的问题,这是一种快速调试的方法。只需设置id为error: Your local changes to the following files would be overwritten by checkout:
src/main/webapp/data/GuerrillaLabels.json
Please, commit your changes or stash them before you can switch branches.
Aborting
的TextView的背景颜色,以确保其末尾有额外的间距即可。
答案 1 :(得分:0)
这个问题仍然没有得到解决,但是问题可能出在我的应用程序中。