gpt4 book ai didi

android - 设置提示时 EditText 不扩展

转载 作者:行者123 更新时间:2023-12-04 16:14:54 27 4
gpt4 key购买 nike

关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。












此问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-topic在这里,这个问题的解决方式不太可能帮助 future 的读者。


去年关闭。







Improve this question




所以我有一个简单的EditTextConstraintLayout 内.我想要的是用户开始输入和 EditText扩展以适应他们的输入,这在我添加提示之前按预期工作。然后 View 似乎受限于提示的宽度,输入没有任何变化。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">

<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<androidx.appcompat.widget.Toolbar
android:id="@+id/add_menu_item_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
app:title="@string/add_menu_item_title" />

<EditText
android:inputType="textCapWords"
android:id="@+id/add_menu_item_name"
style="@style/BlockListItem"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin"
android:layout_marginTop="@dimen/margin"
android:layout_marginEnd="@dimen/margin"
android:textColorHint="@android:color/darker_gray"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/add_menu_item_toolbar" />

<View
android:id="@+id/add_menu_item_stock_frame"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginStart="@dimen/margin"
android:layout_marginTop="@dimen/margin"
android:layout_marginEnd="@dimen/margin"
android:background="@drawable/frame_border"
app:layout_constraintBottom_toBottomOf="@id/add_menu_item_frame_margin"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/add_menu_item_name" />

<LinearLayout
android:id="@+id/add_menu_item_stock_container"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="@id/add_menu_item_stock_frame"
app:layout_constraintStart_toStartOf="@id/add_menu_item_stock_frame"
app:layout_constraintTop_toTopOf="@id/add_menu_item_stock_frame" />

<com.google.android.material.button.MaterialButton
android:id="@+id/add_menu_item_add_stock"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin"
android:layout_marginEnd="@dimen/margin"
android:text="@string/add_menu_item_add_stock"
app:icon="@drawable/baseline_add_24"
app:layout_constraintBottom_toBottomOf="@id/add_menu_item_stock_frame"
app:layout_constraintEnd_toEndOf="@id/add_menu_item_stock_frame"
app:layout_constraintTop_toBottomOf="@id/add_menu_item_stock_container" />

<Space
android:id="@+id/add_menu_item_frame_margin"
android:layout_width="match_parent"
android:layout_height="@dimen/margin"
app:layout_constraintTop_toBottomOf="@id/add_menu_item_add_stock" />

<com.google.android.material.textfield.TextInputLayout
android:id="@+id/add_menu_item_price_container"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin"
android:layout_marginTop="@dimen/margin"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/add_menu_item_stock_frame"
app:layout_goneMarginTop="@dimen/margin">

<com.google.android.material.textfield.TextInputEditText
android:id="@+id/add_menu_item_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:hint="@string/menu_add_price_hint"
android:inputType="numberDecimal" />
</com.google.android.material.textfield.TextInputLayout>

<TextView
android:id="@+id/add_menu_item_suggested_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/margin"
app:layout_constraintBottom_toBottomOf="@id/add_menu_item_price_container"
app:layout_constraintStart_toEndOf="@id/add_menu_item_price_container"
app:layout_constraintTop_toTopOf="@id/add_menu_item_price_container" />

<com.google.android.material.button.MaterialButton
android:id="@+id/add_menu_item_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/margin"
android:text="@string/menu_add_add"
app:layout_constraintBottom_toBottomOf="@id/add_menu_item_price_container"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/add_menu_item_price_container" />

</androidx.constraintlayout.widget.ConstraintLayout>

</ScrollView>

最佳答案

只要您的编辑文本中有字符串,您就可以简单地删除并重置提示:

add_menu_item_name.addTextChangedListener(object : TextWatcher {
val hintText = "myHint"
override fun afterTextChanged(s: Editable?) {}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
add_menu_item_name.hint =
if (count == 0) hintText
else null
}
}
)

关于android - 设置提示时 EditText 不扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59538934/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com