300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 【转】android软键盘显示与主窗口调整方式设置 Android软键盘显示模式及打开和关闭方

【转】android软键盘显示与主窗口调整方式设置 Android软键盘显示模式及打开和关闭方

时间:2019-02-21 05:57:19

相关推荐

【转】android软键盘显示与主窗口调整方式设置 Android软键盘显示模式及打开和关闭方

Android软键盘显示模式:

Android定义了一个属性,名字为windowSoftInputMode,用它可以让程序可以控制活动主窗口调整的方式。我们可以在AndroidManifet.xml中对Activity进行设置。如:android:windowSoftInputMode="stateUnchanged|adjustPan"

该属性可选的值有两部分,一部分为软键盘的状态控制,另一部分是活动主窗口的调整。前一部分本文不做讨论,请读者自行查阅android文档。

模式一,压缩模式

windowSoftInputMode的值如果设置为adjustResize,那么该Activity主窗口总是被调整大小以便留出软键盘的空间。

我们通过一段代码来测试一下,当我们设置了该属性后,弹出输入法时,系统做了什么。

模式二,平移模式

windowSoftInputMode的值如果设置为adjustPan,那么该Activity主窗口并不调整屏幕的大小以便留出软键盘的空间。相反,当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分。这个通常是不期望比调整大小,因为用户可能关闭软键盘以便获得与被覆盖内容的交互操作。

上面的例子中,我们将AndroidManifest.xml的属性进行更改:android: windowSoftInputMode = "adjustPan"

模式三 自动模式

当属性windowSoftInputMode被设置为adjustUspecified时,它不被指定是否该Activity主窗口调整大小以便留出软键盘的空间,或是否窗口上的内容得到屏幕上当前的焦点是可见的。系统将自动选择这些模式中一种主要依赖于是否窗口的内容有任何布局视图能够滚动他们的内容。如果有这样的一个视图,这个窗口将调整大小,这样的假设可以使滚动窗口的内容在一个较小的区域中可见的。这个是主窗口默认的行为设置。

也就是说,系统自动决定是采用平移模式还是压缩模式,决定因素在于内容是否可以滚动。

Android软键盘打开和关闭方式:

切换软键盘:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);

//得到InputMethodManager的实例

if (imm.isActive()) {

//如果开启

imm.toggleSoftInput(InputMethodManager.SHOW_IMPLICIT,InputMethodManager.HIDE_NOT_ALWAYS);

//关闭软键盘,开启方法相同,这个方法是切换开启与关闭状态的

}

if(getCurrentFocus()!=null)

{

((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))

.hideSoftInputFromWindow(getCurrentFocus()

.getWindowToken(),InputMethodManager.HIDE_NOT_ALWAYS);

}

以上所述是小编给大家介绍的Android软键盘显示模式及打开和关闭方式(推荐),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程小技巧网站的支持!

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

小编个人微信号 jb51ccc

喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

【转】android软键盘显示与主窗口调整方式设置 Android软键盘显示模式及打开和关闭方式(推荐)...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。