android - 如何防止编辑文本超出约束布局?
问题描述
我将约束布局高度限制为 250 dp,当它达到限制时,我希望编辑文本打开一个滚动条。但是在布局检查器中,我看到编辑文本在布局上延伸。
我将编辑文本的顶部限制为父级,将底部限制为某些图像视图。
如何防止编辑文本超出约束布局?
<?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="wrap_content"
android:maxHeight="250dp">
<EditText
android:id="@+id/editText"
android:layout_marginTop="5dp"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:hint="write a comment..."
android:inputType="textCapSentences|textMultiLine"
android:scrollIndicators="right"
android:scrollbars="vertical"
app:layout_constraintEnd_toStartOf="@id/resize"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/camera_image"/>
<ImageView
android:layout_width="50dp"
android:id="@+id/camera_image"
android:layout_height="50dp"
android:layout_marginTop="16dp"
android:padding="10dp"
android:src="@drawable/ic_camera_alt_black_24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@id/editText"
app:layout_constraintTop_toBottomOf="@id/editText" />
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginTop="16dp"
android:padding="10dp"
android:src="@drawable/ic_image_black_24dp"
app:layout_constraintBottom_toBottomOf="@id/camera_image"
app:layout_constraintStart_toEndOf="@id/camera_image"
app:layout_constraintTop_toBottomOf="@id/editText" />
<Button
android:layout_width="wrap_content"
android:layout_height="50dp"
app:layout_constraintEnd_toEndOf="parent"
android:text="POST"
app:layout_constraintBottom_toBottomOf="@id/camera_image"
app:layout_constraintTop_toTopOf="@id/camera_image" />
<ImageButton
android:layout_width="50dp"
android:id="@+id/resize"
android:layout_height="50dp"
android:layout_marginTop="5dp"
android:layout_marginEnd="5dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
解决方案
设置android:maxHeight="200"
为您的EditText
并制作它wrap_content
。
这应该做你想要达到的目标。
在此处阅读有关此方法的更多信息:TextView。
(TextView
是 的父类EditText.
)
推荐阅读
- javascript - Chrome.tabs.sendMessage 无缘无故无法正常工作
- shell - 如何在 Windows 上并行运行脚本
- javascript - 需要帮助将 tsparticles.js .SVG 多边形蒙版与
- json - TYPO3 删除 json 视图的缓存注释
- maven - 在 IntelliJ IDEA 中使用 Maven 插件,无需在计算机中安装 Maven
- facebook - 在 Facebook 上发送私人消息
- python - 无法使用 PIP 安装 tensorflow 版本 1
- python - 有没有找到这组数字的公式?
- c# - 无法加载文件或程序集 Microsoft.IdentityModel.Tokens 问题
- python - ValueError:重新索引仅对具有唯一值的索引对象有效