android - Android - 防止 TextView 在 LinearLayout 中推出另一个元素
问题描述
这是布局:
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/profileUserImage">
<TextView
android:id="@+id/profileNickname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:scrollHorizontally="false"
android:text="No Nickname yet fdg d trdt rdrt tdr td trd t"
android:textColor="@color/colorText"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/btnEditNickname"
android:layout_width="42dp"
android:layout_height="42dp"
android:layout_marginLeft="8dp"
android:padding="6dp"
android:scaleType="fitXY"
app:srcCompat="@android:drawable/ic_menu_edit" />
</androidx.appcompat.widget.LinearLayoutCompat>
当profileNickname
变得太长时,它会从btnEditNickname
LinearLayout 中推出,并且会在文本被换行之前将自己从 Layout 中覆盖出来。在毁掉一切之前,我怎样才能让这个烦人的 c*** 及时包装?我已经厌倦了为这样的未成年人浪费时间,我讨厌安卓!
解决方案
您只需要将这一行添加到 TextView android:layout_weight="1"
这是最终的 XML
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/profileNickname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:scrollHorizontally="false"
android:text="No Nickname yet fdg d trdt rdrt tdr td trd t"
android:textColor="#FFF"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/btnEditNickname"
android:layout_width="42dp"
android:layout_height="42dp"
android:layout_marginLeft="8dp"
android:layout_gravity="center"
android:padding="6dp"
android:scaleType="fitXY"
app:srcCompat="@android:drawable/ic_menu_edit" />
</LinearLayout>
推荐阅读
- latex - 如何解决 R-Markdown 中 Latex 的问题?
- css - 布尔玛两种形式之间的巨大差距
- getstream-io - 将“updateActivities”与 Stream 一起使用时如何指定提要?
- docker - docker 镜像构建失败;不支持操作系统
- apache-kafka - 如何读取 Kafka 主题中的所有记录
- c++ - C++ 在树中打印 shared_ptr 使用计数
- r - 在 Shiny 应用程序中显示函数的 R 文档
- javascript - JavaScript:按每个对象中的数字属性对对象数组进行排序
- html - 媒体查询不适用于 chrome,但适用于 SO 编辑器
- python-3.x - X值是时间格式时如何使用.fit