在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:vehicle-keyboard-android开源软件地址:https://gitee.com/iRainIoT/vehicle-keyboard-android开源软件介绍:停车王车牌键盘 VehicleKeyboard - Android
包括以下三个项目:
零、项目主页Android 版本iOS 版本JavaScript Vue.js 版本兼容性声明注意:当前版本v0.5,已修改为Java原生实现键盘逻辑,不再使用Javascript。项目包结构已发生重大修改,不再向0.4及以下版本兼容。 车牌号码规则支持输入车牌类型支持中华人民共和国现行绝大部分车牌号码类型:
一、添加到项目增加仓库地址: repositories { jcenter()} 添加库依赖: implementation 'com.parkingwang:keyboard:0.6.1' // OR compile 'com.parkingwang:keyboard:0.6.1' 二、使用组件2.1 车牌号码输入组件 InputViewInputView是用于手动输入车牌的组件,提供7-8个用户可选择修改的输入框,如上图所示。 在XML中放置输入组件: <com.parkingwang.keyboard.view.InputView android:id="@+id/input_view" app:pwkInputTextSize="22sp" android:layout_width="match_parent" android:layout_height="60dp"/> 2.2 车牌号码键盘组件 - KeyboardViewKeyboardView是车牌输入键盘组件,提供按车牌类型显示一定规则的键盘布局供用户点击,如上图所示。 在XML中放置键盘组件: <com.parkingwang.keyboard.view.InputView android:id="@+id/input_view" android:layout_margin="6dp" app:pwkInputTextSize="22sp" android:layout_width="match_parent" android:layout_height="60dp"/> 2.3 输入框和键盘控制器 - KeyboardInputController在代码中绑定输入组件与键盘的关联: 使用弹出键盘 // 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) { lockTypeButton.setTextColor(getResources().getColor(android.R.color.holo_green_light)); } else { lockTypeButton.setTextColor(getResources().getColor(android.R.color.black)); } } }); 不弹出键盘,直接显示 // 使用 KeyboardInputController 来关联mController = KeyboardInputController .with(mKeyboardView, inputView);mController.useDefaultMessageHandler(); 三、键盘功能特性设置3.1 设置是否显示“确定”键根据需要,你可以通过调用KeyboardEngine的 mPopupKeyboard.getKeyboardEngine().setHideOKKey(mHideOKKey); 3.2 优先显示周边省份根据需要,在不同地区的用户,输入车牌号码时,可以根据当地地理位置,显示周边省份的简称。获取地理位置需要的定位功能,需要你外部调用定位API,获取到对应的省份名称后,设置到KeyboardEngine中。使用如下代码: mPopupKeyboard.getKeyboardEngine().setLocalProvinceName("广东省"); 3.3 设置键盘按下时的气泡:
由于顶层按键的气泡会显示到键盘之外,因此需要键盘所在的父布局增加以下属性(如果气泡范围超出父布局,则需往上递归设置): android:clipChildren="false"
mKeyboardView.setShowBubble(false); 四、键盘样式设置4.1 设置键盘按钮文字大小在Java代码中添加以下设置: mKeyboardView.setCNTextSize(float); //设置中文字体大小 mKeyboardView.setENTextSize(float); //设置英文字母或数字字体大小 4.2 设置键盘主题颜色在colors.xml中覆盖以下颜色值以修改键盘主题色 <color name="pwk_primary_color">#418AF9</color> <!--确定按键按下时的颜色--> <color name="pwk_primary_dark_color">#3A7CE0</color> 4.3 设置输入组件字体大小: <com.parkingwang.keyboard.view.InputView app:pwkInputTextSize="22sp" ..../> 4.4 设置输入组件的样式默认提供两种输入组件样式: 4.4.1. 混合紧排样式(默认样式) - MIXED <!--输入框按键样式,最左最右键样式设置--> <style name="PWKInputItemStyleKey" parent="PWKInputItemStyle_BORDER_KEY"/> <!--输入框外部样式--> <style name="PWKInputViewStyle" parent="PWKInputViewStyle_MIXED"/> 4.4.2. 分隔块状样式 - DIVIDED <!--输入框按键样式,最左最右键样式设置--> <style name="PWKInputItemStyleKey" parent="PWKInputItemStyle_FILLED_KEY"/> <!--输入框外部样式--> <style name="PWKInputViewStyle" parent="PWKInputViewStyle_DIVIDED"/> 在项目的 4.5 如何修改自己的样式覆盖
4.5.1 InputView的样式选项注意最新版本需要配置 在布局文件中为 style="@style/PWKInputViewStyle" 或者是在 <item name="pwkInputStyle">@style/PWKInputViewStyle</item> 常规配置 通过覆盖以下样式配置,可以修改默认样式 <!--输入框外边框宽度--> <dimen name="pwk_input_view_border_width">0.7pt</dimen> <!--背景缩进,必须与pwk_input_view_border_width保持一致,并且为负值--> <dimen name="pwk_input_view_border_width_inset">-0.7pt</dimen> <!--输入框分割线的宽度,在混合组件中使用--> <dimen name="pwk_input_view_divider_split_line">@dimen/pwk_input_view_border_width</dimen> <!--输入框分割空间的距离,在分离组件样式中使用--> <dimen name="pwk_input_view_divider_split_space">5dp</dimen> <!--输入框选中状态的边框宽度,在混合组件中使用--> <dimen name="pwk_input_item_highlight_border_width">1.2pt</dimen> <!--输入框圆角--> <dimen name="pwk_input_item_radius">4dp</dimen> <!--输入框字体大小--> <dimen name="pwk_input_item_text_size">24sp</dimen> 4.5.2 如何自定义输入框的选中样式
<item name="pwkSelectedDrawable">com.parkingwang.keyboard.view.SelectedDrawable</item> 五、停车王车牌键盘布局切换逻辑5.1 DOC文档5.2 停车王车牌键盘布局切换逻辑停车王车牌键盘布局切换逻辑的思维导图,说明了当前版本的键盘布局的切换,以及“更多”、“返回”按钮的切换逻辑。 六、版本更新v0.6.1 2018.08.02
v0.6.0 2018.07.24
v0.5.5 2018.07.02
v0.5.3 2018.06.15
v0.4.0 2018.0424
v0.3-ALPHA 2017.1120
v0.2-ALPHA 2017.1113
v0.1-BETA 2017.1108
ContributorsVehicleKeyboard-Android由西安艾润物联网技术服务有限公司第一事业部深圳研发中心开发和维护,旨在为停车行业同行进行技术交流和分享。 目前在两位开发者在开发维护,如您有相关问题,可以通过PullRequest和Issues来提交,也可以通过邮件与我们联系。
疑问与交流如果你在使用此键盘时,出现一些问题,或者有相关疑问。可以添加以下微信技术群做讨论。 如果群二维码过期,可以通过以下微信加好友,注明“车牌键盘”,我会拉到专门技术群做讨论。 |
请发表评论