当前位置:首页 » 安卓系统 » android键盘控制

android键盘控制

发布时间: 2024-11-23 00:22:42

‘壹’ android输入法是怎样调用的

Android软键盘强制弹出及隐藏输入法的方法:
很多应用中对于一个界面比如进入搜索界面或者修改信息等等情况,为了用户体验应该自动弹出软键盘而不是让用户主动点击输入框才弹出(因为用户进入该界面必然是为了更改信息)。具体实现这种效果的代码如下:
java代码
EditText editText.setFocusable(true);
editText.setFocusableInTouchMode(true);
editText.requestFocus();
InputMethodManager inputManager =
(InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
首先要对指定的输入框请求焦点。然后调用输入管理器弹出软键盘。
警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法弹出软键盘。此时应该适当的延迟弹出软键盘如998毫秒(保证界面的数据加载完成)。实例代码如下:
java代码:
Timer timer = new Timer();
timer.schele(new TimerTask()
{
public void run()
{
InputMethodManager inputManager =
(InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
}
},
998);

‘贰’ android 怎么改键盘按键

首先,保证手机已经ROOT,并且安装了RE文件管理器,先用RE管理器打开systemusrkeylayout下的文件s3c-keypad.kl(以文本编辑方式打开),在目录中不同的数字对应不同的功能,看好原先对应的功能,在将数字按照喜欢的风格进行重新编写:

  1. 116代表锁屏键

  2. 102代表宝石键

  3. 231代表拨号键

  4. 217代表相机上面的键

  5. 26代表挂机键

  6. 115代表音量+

  7. 114代表音量-

  8. 158代表相机键

  9. 改完立刻重启就OK了。

‘叁’ 【转】Android软键盘的全面解析

软键盘其实是一个Dialog

InputMethodService为我们的输入法创建了一个Dialog,并且对某些参数进行了设置,使之能够在底部或者全屏显示。当我们点击输入框时,系统会对当前的主窗口进行调整,以便留出相应的空间来显示该Dialog在底部,或者全屏。

其实这段话我们经常在各种软键盘博客所看到,但是大家并不知道Android是怎么为我们创建的这个Dialog,所以我先带大家来看下软键盘生成这块的源码,了解软键盘的生成流程。

我们先来看一下InputMethodService的继承关系:

因为InputMethodService属于服务,接下来我们先看一下服务的入口onCreate()方法:

通过上面的分析,我们怀疑这里的SoftInputWindow是软键盘弹出创建的Dialog对象,下面我们看下SoftInputWindow的源码。

看到这里大家就能明白了,为什么说软键盘就是一个Dialog。而且这里通过设置Gravity.BOTTOM来控制当前Dialog在Window中的位置。

在Android中,可以通过给Activity设置 windowSoftInputMode 这个属性来控制软键盘与Activity的主窗口的交互方式。

Activity 的主窗口与包含屏幕软键盘的窗口的交互方式,该属性的设置影响两个方面:

该设置必须是下面所列的值之一,或者是一个“state…”值加上一个“adjust…”值的组合,在任一组中设置多个值(例如,多个“state…”值)都会产生未定义结果。各值之间使用垂直条 (|) 分隔。

下面将通过例子来介绍 adjustNoting adjustUnspecified adjustResize adjustPan 在软键盘弹出的区别:

非滚动布局xml

点击最下面的EditText12

滚动布局xml

通过上面的例子,我们可以完全理解adjust系列的各个参数的作用。而软键盘的显示和隐藏这里面需要并不多,而且内容并不算复杂,大家回去自己尝试下就可以。

在日常开发中,如果需要将软键盘的Enter键更改为其他键,可以设置其 android:imeOptions 属性,这个属性可以控制软键盘的Enter键,以及横屏情况下的软键盘显示状态。

该设置必须是下面所列的值之一,或者是一个“action…”值加上一个“flag…”值的组合,在action…组中设置多个值(例如,多个“action…”值)都会产生未定义结果,而flag….可以设置多个。各值之间使用垂直条 (|) 分隔

控制软键盘上的Enter键

横屏下控制软键盘

总结一下:
这里大部分的属性,已经介绍完毕,如果英语好的同学,可以去看下官方文档,可以更好的理解,并且本文以搜狗输入法为实践,可能其他的输入法与其显示的不同,但是功能应该都是一样的。

而如果要在横屏状态不希望软键盘全屏显示最好是将flagNoFullscreen和flagNoExtractUi结合使用,这样体验上会更好

android:imeOptions=”flagNoFullscreen|flagNoExtractUi”

Android官网的Api

如果需要监听软键盘的右下角的按键,需要为EditText设置setOnEditorActionListener()监听:

上面的方式,只是展示了如何监听各个按键的方法,如果需要消费事件,则需要return true。

(1)第一次写这么长的博客,感觉会有一些不足,各位看官如果有不合理的地方,或者有误的地方请直接指出。

(2)本来想整理成一个Demo的,后来简单看来下,该有的几乎都贴出来了,有需要的可以按需复制就可以。

(3)写完这篇博客之后,感觉博客干货还是不多,所以定位这篇文章算是总结性质加上实际案例性质的博客。

(4)Android软键盘的总结就差不多到这里,希望各位看官,如果看到这里有收获,就点点赞,灌灌水,顶一波,这样博主才有写下去的动力。

(5)感谢小辉同学的校验,调整了文章中不通顺的地方。

1.彻底搞定Android开发中软键盘的常见问题
http://blog.csdn.net/mynameishuangshuai/article/details/51567357

2.Android UI(EditText)详解
http://blog.csdn.net/qq_28057577/article/details/51919965?locationNum=12&fps=1

3.微信软键盘布局闪动问题
https://blog.dreamtobe.cn/2015/09/01/keyboard-panel-switch/

‘肆’ 安卓手机怎么切换输入法

安卓手游乱好机切换输入法的方法:

1、手机输入法的选择可以点击自己系统输入法使用,也可以从手机应用商店搜索其他名称的输入法下载安装使用;

2、手神铅机切换输入法需要打开手机的设置,有的手机可以直接找到输入法设置,也可以点击上方的搜索框来搜索一下输入法设置;

3、输入法的显示语言可以在中文和英文之间切换,点击语言根据自己的需要自由的切换,其他语言陪神暂时不支持;

4、手机系统里面可能会有多个不同的输入法软件,点击系统默认输入法,在窗口里面选择自己喜欢的输入法,然后点击选择键盘来切换。

‘伍’ 如何设置Android软键盘的默认不弹出

如何设置Android软键盘的默认不弹出?

在开发Anroid的时候,当你打开一个界面的时候,屏幕的焦点会自动停留在第一个EditText中,Android的软键盘默认会自动弹出,用户第一眼连界面都没有看清楚,软键盘就弹出来了,这就影响到了用户体验,我们需要设置打开界面的时候,当EditText获取焦点的时候,不弹出软键盘,其实也很简单,代码如下:

// 默认软键盘不弹出 getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

在OnCreate()函数中,加上即可,OK,搞定。

‘陆’ android 自定义软键盘 键盘怎么自定义改键

自定义键盘整个过程如下:

1.第一步,根据你的需求,需要定制怎样的键盘,需要几行几列,准备好键盘按键的背景图片,键盘的尺寸,在res文件下,新建一个xml文件,下面放字母、数字、标点符号键盘的布局文件,我的需求是这样的:

可以看到上述的键盘需要美工做的图片有几张:字母和数字的按键的基本背景(需要圆角)、删除按键、切换大小写的图标、点击隐藏键盘的下拉按键,设置键盘的布局为白色就可以大致实现上述的效果。这里我在写键盘文件的时候遇到几个难点,分享如下:

A.按键之间的空隙和键盘整体高度,需要不断的调整,不可能一下子就可以布置好的,特别字母键盘里的删除键,高度是两个按键,所以需要反复调试。

B.为了解决点击下拉按钮隐藏键盘的功能:放弃原先点击下拉按钮,隐藏整个键盘的布局的方案,而改用在键盘文件中再加一整行,只有一个按键,就是done,完成按钮,这是系统定义好的完成功能,code值为:-3。(所以我们发现很多系统自动的比如切换大小写、删除功能、空格功能,都是已经定义好了code值,只需要找到对应的含义,直接定义使用就可以了。)

热点内容
解压后有个文件看不到 发布:2024-11-23 05:54:01 浏览:125
android功耗 发布:2024-11-23 05:53:53 浏览:751
战地1服务器ip 发布:2024-11-23 05:48:47 浏览:797
android内核教程 发布:2024-11-23 05:43:11 浏览:757
数据存储智能制造叫什么部门 发布:2024-11-23 05:31:24 浏览:344
linux系统版本号 发布:2024-11-23 05:21:58 浏览:706
大学生用的电脑服务器 发布:2024-11-23 05:20:22 浏览:371
加密芯片解密 发布:2024-11-23 05:20:20 浏览:844
腾讯云服务器的地址在哪看 发布:2024-11-23 05:15:20 浏览:410
电脑配置低怎么玩cf 发布:2024-11-23 04:58:10 浏览:379