回复
鸿蒙开源组件——车牌键盘输入组件
jacksky
发布于 2021-10-15 18:16
浏览
0收藏
vehicle-keyboard-ohos
项目介绍
- 项目名称:vehicle-keyboard-ohos
- 所属系列:openharmony的第三方组件适配移植
- 功能:快速输入车牌号
- 项目移植状态:主功能完成
- 调用差异:无
- 开发版本:sdk6,DevEco Studio2.2 Beta1
- 基线版本:Release 0.7.4
效果演示
安装教程
1.在项目根目录下的build.gradle文件中,
allprojects {
repositories {
maven {
url 'https://s01.oss.sonatype.org/content/repositories/releases/'
}
}
}
2.在entry模块的build.gradle文件中,
dependencies {
implementation('com.gitee.chinasoft_ohos:vehicle-keyboard-ohos:1.0.0')
......
}
在sdk6,DevEco Studio2.2 Beta1下项目可直接运行 如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件, 并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下
使用说明
- 支持中华人民共和国现行绝大部分车牌号码类型:
- 民用蓝牌、黄牌
- 新能源车牌
- 港澳车牌
- 武警车牌
- 军队车牌
- 新旧大使馆车牌
- 新旧领事馆车牌
- 民航车牌
1.在XML中放置车牌输入组件:
<com.parkingwang.keyboard.view.InputView
ohos:id="$+id:inputView"
ohos:height="60vp"
ohos:width="match_parent"
ohos:top_margin="20vp"
ohos:bottom_margin="20vp"
ohos:left_margin="15vp"
ohos:right_margin="15vp"
/>
2.在代码中绑定输入组件与键盘的关联:
使用弹出键盘
// Init Views
// 创建弹出键盘
mPopupKeyboard = new PopupKeyboard(this);
// 弹出键盘内部包含一个KeyboardView,在此绑定输入两者关联。
mPopupKeyboard.attach(mInputView, this);
// KeyboardInputController提供一个默认实现的新能源车牌锁定按钮
mPopupKeyboard.getController()
.setDebugEnabled(true)
.bindLockTypeProxy(new KeyboardInputController.ButtonProxyImpl(lockTypeButton) {
@Override
public void onNumberTypeChanged(boolean isNewEnergyType) {
super.onNumberTypeChanged(isNewEnergyType);
if (isNewEnergyType) {
changeNewEnergy.setTextColor(new Color(Color.getIntColor("#ff99cc00")));
} else {
changeNewEnergy.setTextColor(new Color(Color.getIntColor("#ff000000")));
}
}
});
不弹出键盘,直接显示
// 使用 KeyboardInputController 来关联
mController = KeyboardInputController
.with(mKeyboardView, inputView);
mController.useDefaultMessageHandler();
切换新能源和普通车牌是否校验
mController.setSwitchVerify(false) //不校验(默认校验)
键盘功能特性设置
- 设置是否显示“确定”键
根据需要,你可以通过调用KeyboardEngine的setHideOKKey(boolean)
来设置是否隐藏“确定”键。
mPopupKeyboard.getKeyboardEngine().setHideOKKey(mHideOKKey);
- 优先显示周边省份
根据需要,在不同地区的用户,输入车牌号码时,可以根据当地地理位置,显示周边省份的简称。 获取地理位置需要的定位功能,需要你外部调用定位API,获取到对应的省份名称后,设置到KeyboardEngine中。 使用如下代码:
mPopupKeyboard.getKeyboardEngine().setLocalProvinceName("广东省");
- 设置键盘按下时的气泡:
(1). 正确地显示气泡
由于顶层按键的气泡会显示到键盘之外,因此需要键盘所在的父布局代码中增加以下属性设置(如果气泡范围超出父布局,则需往上递归设置):
component.setClipEnabled(false);
mKeyboardView.setShowBubble(true);
(2). 不显示气泡
mKeyboardView.setShowBubble(false);
键盘样式设置
- 设置键盘按钮文字大小
在Java代码中添加以下设置:
mKeyboardView.setCNTextSize(float); //设置中文字体大小
mKeyboardView.setENTextSize(float); //设置英文字母或数字字体大小
- 设置输入组件字体大小:
<com.parkingwang.keyboard.view.InputView app:pwkInputTextSize ="22fp" .... />测试信息
CodeCheck代码测试无异常
CloudTest代码测试无异常
病毒安全检测通过
当前版本demo功能与原组件基本无差异
版本迭代
- 1.0.0
版权和许可信息
Copyright (c) 2017 Xi'an iRain IoT. Technology Service CO., Ltd. 注意:于2018年04月08日,本源代码修改开源协议,声明如下: 西安艾润物联公司版本所有,保留所有版权。 本源代码仅供技术学习交流,本项目及衍生代码均不可作商业使用。
vehicle-keyboard-ohos-master.zip 1.01M 44次下载
已于2021-10-15 18:28:18修改
赞
收藏
回复
相关推荐