From 72a8c3107db7d1a483c3826637d38f7dcd79e72c Mon Sep 17 00:00:00 2001 From: YANGJIANKUAN Date: Sun, 4 Jan 2026 11:55:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=88=AA=E7=8F=AD=E5=8F=B7=E5=A4=A7?= =?UTF-8?q?=E5=86=99=EF=BC=8C=E8=BF=87=E6=BB=A4=E5=AD=97=E6=AF=8D=E6=95=B0?= =?UTF-8?q?=E5=AD=97=E4=B9=8B=E5=A4=96=E7=9A=84=E5=AD=97=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../weight/search/layout/SearchLayoutKtx.kt | 27 +++++++++++++++++++ .../res/layout/activity_gjc_box_weighing.xml | 3 ++- .../res/layout/activity_gjc_weighing_list.xml | 1 + .../activity_gjc_weighing_record_list.xml | 3 ++- .../res/layout/activity_int_exp_assemble.xml | 3 ++- 5 files changed, 34 insertions(+), 3 deletions(-) diff --git a/module_base/src/main/java/com/lukouguoji/module_base/ui/weight/search/layout/SearchLayoutKtx.kt b/module_base/src/main/java/com/lukouguoji/module_base/ui/weight/search/layout/SearchLayoutKtx.kt index 9c77c31..2b5193a 100644 --- a/module_base/src/main/java/com/lukouguoji/module_base/ui/weight/search/layout/SearchLayoutKtx.kt +++ b/module_base/src/main/java/com/lukouguoji/module_base/ui/weight/search/layout/SearchLayoutKtx.kt @@ -8,6 +8,7 @@ import androidx.core.widget.doOnTextChanged import androidx.databinding.BindingAdapter import androidx.databinding.InverseBindingAdapter import androidx.databinding.InverseBindingListener +import com.lukouguoji.module_base.ktx.UpperCaseAlphanumericInputFilter import dev.utils.app.EditTextUtils import dev.utils.app.info.KeyValue @@ -288,4 +289,30 @@ fun setSearchLayoutNewInputWaybill(layout: PadSearchLayoutNew, isWaybill: Boolea } } } +} + +/////////////////////////////////////////////////////////////////////////// +// 大写字母+数字输入限制 BindingAdapter +/////////////////////////////////////////////////////////////////////////// + +/** + * 为PadSearchLayout设置大写字母+数字输入限制 + * 自动转换小写为大写,过滤中文、特殊符号、空格 + */ +@BindingAdapter("setUpperCaseAlphanumeric", requireAll = false) +fun setUpperCaseAlphanumeric(layout: PadSearchLayout, enabled: Boolean) { + if (enabled) { + layout.et.filters = arrayOf(UpperCaseAlphanumericInputFilter()) + } +} + +/** + * 为PadSearchLayoutNew设置大写字母+数字输入限制 + * 自动转换小写为大写,过滤中文、特殊符号、空格 + */ +@BindingAdapter("setUpperCaseAlphanumeric", requireAll = false) +fun setSearchLayoutNewUpperCaseAlphanumeric(layout: PadSearchLayoutNew, enabled: Boolean) { + if (enabled) { + layout.et.filters = arrayOf(UpperCaseAlphanumericInputFilter()) + } } \ No newline at end of file diff --git a/module_gjc/src/main/res/layout/activity_gjc_box_weighing.xml b/module_gjc/src/main/res/layout/activity_gjc_box_weighing.xml index 7858dce..d981801 100644 --- a/module_gjc/src/main/res/layout/activity_gjc_box_weighing.xml +++ b/module_gjc/src/main/res/layout/activity_gjc_box_weighing.xml @@ -46,7 +46,8 @@ android:layout_weight="1" hint='@{"请输入航班号"}' type="@{SearchLayoutType.INPUT}" - value="@={viewModel.flightNo}" /> + value="@={viewModel.flightNo}" + setUpperCaseAlphanumeric="@{true}" /> diff --git a/module_gjc/src/main/res/layout/activity_gjc_weighing_record_list.xml b/module_gjc/src/main/res/layout/activity_gjc_weighing_record_list.xml index 45cbe51..8a413e3 100644 --- a/module_gjc/src/main/res/layout/activity_gjc_weighing_record_list.xml +++ b/module_gjc/src/main/res/layout/activity_gjc_weighing_record_list.xml @@ -46,7 +46,8 @@ android:layout_weight="1" hint='@{"请输入航班号"}' type="@{SearchLayoutType.INPUT}" - value="@={viewModel.flightNo}" /> + value="@={viewModel.flightNo}" + setUpperCaseAlphanumeric="@{true}" /> + value="@={viewModel.flightNo}" + setUpperCaseAlphanumeric="@{true}" />