利用Dialog实现安卓自定义软键盘的方法、装置及电子设备制造方法及图纸

技术编号:24251147 阅读:55 留言:0更新日期:2020-05-22 23:22
本公开实施例中提供了一种利用Dialog实现安卓自定义软键盘的方法、装置及电子设备,属于安卓系统智能终端的技术领域,该方法包括:在Dialog对象中集成KeyboardView软键盘视图,以便于进行键盘的弹入和弹出,以及键盘的状态监听;在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用,以便于进行安全软键盘的摊入弹出以及内容输入;通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度;通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度。本发明专利技术创建的自定义软键盘动画流畅、软件运行稳定,同时集成方便。

The method, device and electronic device of Android custom soft keyboard with dialog

【技术实现步骤摘要】
利用Dialog实现安卓自定义软键盘的方法、装置及电子设备
本公开涉及安卓系统智能终端的
,尤其涉及一种利用Dialog实现安卓自定义软键盘的方法、装置及电子设备。
技术介绍
随着移动终端的不断发展与普及,各种移动终端已成为人们生活和工作的必要工具,尤其是搭载安卓系统的移动设备已占据了最大市场比例。在安卓操作系统中,其中与用户交互的主要方式就包括了软键盘输入,可是系统自带的软键盘无法满足用户的安全输入和一些特殊需求。因此,自定义的安全软键盘便成为满足用户安全输入的一种方式。当前,系统提供了一个软键盘基本类KeyboardView,用户可继承此类实现自定义的软键盘应用。对于KeyboardView的弹入弹出,一般都会自定义一个VIewGroup对象,同时实现对象的弹入和弹出动画,最后集成KeyboardView视图,最终实现一个自定义的软键盘。一般自定义安全键盘的功能包括:1)支持数字、字母和特殊字符的乱序。2)提供安全键盘字符按下效果的开关。3)提供安全键盘按键预览效果的开关。4)监听安全键盘弹起状态。然而,随着网页在安卓系统中越来越多的集成,支持WebView下的自定义软键盘显的越来越必要。
技术实现思路
有鉴于此,本公开实施例提供一种利用Dialog实现安卓自定义软键盘的方法、装置及电子设备,以至少部分解决现有技术中存在的问题。第一方面,本公开实施例提供了一种利用Dialog实现安卓自定义软键盘的方法,包括:在Dialog对象中集成KeyboardView软键盘视图,以便于进行键盘的弹入和弹出,以及键盘的状态监听;在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用,以便于进行安全软键盘的摊入弹出以及内容输入;通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度;通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度。根据本公开实施例的一种具体实现方式,所述在Dialog对象中集成KeyboardView软键盘视图,包括:利用Dialog类中setContentView接口将Dialog视图内容设置为KeyboardView软键盘视图。根据本公开实施例的一种具体实现方式,所述在Dialog对象中集成KeyboardView软键盘视图,包括:利用Dialog的show和hide接口控制键盘的弹入和弹出。根据本公开实施例的一种具体实现方式,所述在Dialog对象中集成KeyboardView软键盘视图,包括:利用Dialog的setOnShowListener和setOnDismissListener接口实现键盘的状态监听。根据本公开实施例的一种具体实现方式,所述在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用之后,所述方法还包括:利用WebView的接口loadUrl("javascript:insert('"+content+"')"),实Java代码调用Js接口的功能,实现向网页提交软键盘输入的内容。根据本公开实施例的一种具体实现方式,所述通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度,包括:获取手机屏幕高度screenHeight;获取软键盘的高度keyboardHeight;获取当前编辑框距离页面顶部的高度etHeight;获取状态栏高度statuHeight;获取导航栏高度scrollHeight;计算出键盘与编辑框的遮挡偏移高度offsetHeight为:offsetHeight=(screenHeight-(statusHeight+etHeight))-(keyboardHeight+scrollHeight)。根据本公开实施例的一种具体实现方式,所述,通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度包括:动态的获取所述偏移高度,并基于获取到的所述偏移高度将WebView视图在当前视图中进行上移操作。第二方面,本公开实施例提供了一种利用Dialog实现安卓自定义软键盘的装置,包括:集成模块,用于在Dialog对象中集成KeyboardView软键盘视图,以便于进行键盘的弹入和弹出,以及键盘的状态监听;实现模块,用于在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用,以便于进行安全软键盘的摊入弹出以及内容输入;确定模块,用于通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度;移动模块,用于通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度。。第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:至少一个处理器;以及,与该至少一个处理器通信连接的存储器;其中,该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述第一方面或第一方面的任一实现方式中的利用Dialog实现安卓自定义软键盘的方法。第四方面,本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述第一方面或第一方面的任一实现方式中的利用Dialog实现安卓自定义软键盘的方法。第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述第一方面或第一方面的任一实现方式中的利用Dialog实现安卓自定义软键盘的方法。本公开实施例中的利用Dialog实现安卓自定义软键盘的方案,包括在Dialog对象中集成KeyboardView软键盘视图,以便于进行键盘的弹入和弹出,以及键盘的状态监听;在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用,以便于进行安全软键盘的摊入弹出以及内容输入;通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度;通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度。本专利技术创建的自定义软键盘动画流畅、软件运行稳定,同时集成方便。附图说明为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本公开实施例提供的一种利用Dialog实现安卓自定义软键盘的方法的流程图;图2为本公开实施例提本文档来自技高网...

【技术保护点】
1.一种利用Dialog实现安卓自定义软键盘的方法,其特征在于,包括:/n在Dialog对象中集成KeyboardView软键盘视图,以便于进行键盘的弹入和弹出,以及键盘的状态监听;/n在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用,以便于进行安全软键盘的摊入弹出以及内容输入;/n通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度;/n通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度。/n

【技术特征摘要】
1.一种利用Dialog实现安卓自定义软键盘的方法,其特征在于,包括:
在Dialog对象中集成KeyboardView软键盘视图,以便于进行键盘的弹入和弹出,以及键盘的状态监听;
在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用,以便于进行安全软键盘的摊入弹出以及内容输入;
通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度;
通过ViewGroup的接口将整个WebView视图向上移动所述偏移高度。


2.根据权利要求1所述的方法,其特征在于,所述在Dialog对象中集成KeyboardView软键盘视图,包括:
利用Dialog类中setContentView接口将Dialog视图内容设置为KeyboardView软键盘视图。


3.根据权利要求1所述的方法,其特征在于,所述在Dialog对象中集成KeyboardView软键盘视图,包括:
利用Dialog的show和hide接口控制键盘的弹入和弹出。


4.根据权利要求1所述的方法,其特征在于,所述在Dialog对象中集成KeyboardView软键盘视图,包括:
利用Dialog的setOnShowListener和setOnDismissListener接口实现键盘的状态监听。


5.根据权利要求1所述的方法,其特征在于,所述在Java代码中实现NativeInterface接口中相关函数供WebView中的Js代码调用之后,所述方法还包括:
利用WebView的接口loadUrl("javascript:insert('"+content+"')"),实Java代码调用Js接口的功能,实现向网页提交软键盘输入的内容。


6.根据权利要求1所述的方法,其特征在于,所述通过读取手机的第一尺寸参数和所述软键盘的第二尺寸参数,确定软键盘的偏移高度,包括:
获取手机屏幕高度screenHeight;
获取软键盘...

【专利技术属性】
技术研发人员:耿鹏飞张鹤张彦雷
申请(专利权)人:久盈世纪北京科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1