`
yxwang0615
  • 浏览: 561036 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Android设置弹出键盘与View的交互方式[学习]

 
阅读更多

要设置弹出键盘是否覆盖Activity的view,或者软键盘的显示隐藏状态,就要用到Activity的一个属性:

android:windowSoftInputMode

该属性在AndroidManifest.xml 中设置,如下:

 

<activity android:windowSoftInputMode=["stateUnspecified",
                                    "stateUnchanged", "stateHidden",
                                    "stateAlwaysHidden", "stateVisible",
                                    "stateAlwaysVisible", "adjustUnspecified",
                                    "adjustResize", "adjustPan"] …… >
</activity>

 

 []中的属性为可选,如选择多项用" | "隔开。

 

下面贴出属性对应值的意义:

 

 

描述

"stateUnspecified"

软键盘的状态(是否它是隐藏或可见)没有被指定。系统将选择一个合适的状态或依赖于主题的设置。

这个是为了软件盘行为默认的设置。

"stateUnchanged"

软键盘被保持无论它上次是什么状态,是否可见或隐藏,当主窗口出现在前面时。

"stateHidden"

当用户选择该Activity时,软键盘被隐藏——也就是,当用户确定导航到该Activity时,而不是返回到它由于离开另一个Activity

"stateAlwaysHidden"

软键盘总是被隐藏的,当该Activity主窗口获取焦点时。

"stateVisible"

软键盘是可见的,当那个是正常合适的时(当用户导航到Activity主窗口时)

"stateAlwaysVisible"

当用户选择这个Activity时,软键盘是可见的——也就是,也就是,当用户确定导航到该Activity时,而不是返回到它由于离开另一个Activity

"adjustUnspecified"

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

"adjustResize"

Activity主窗口总是被调整屏幕的大小以便留出软键盘的空间

"adjustPan"

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


 

 

更多:

 

1.自定义Dialog中得EditText弹出键盘:

http://android.tgbus.com/Android/tutorial/201107/361066.shtml

 

2.软键盘显示的原理:

http://hkp.iteye.com/blog/1205492

分享到:
评论

相关推荐

    Android 设置一个底部控件view随着软键盘的弹出而上移

    有一些开源库,如`android-useful-dialogs`和`android-keyboard-aware-scroll-view`,已经实现了键盘弹出时底部视图上移的功能。可以直接集成这些库,简化开发过程。 在"Android 底部控件随软键盘弹出demo"这个...

    Android判断软键盘是否弹出

    在Android开发中,有时我们需要检测应用中的软键盘是否弹出,以便进行相应的界面调整或功能控制。例如,当用户打开虚拟键盘时,我们可能需要自动调整输入框的位置,或者在键盘隐藏时恢复原来的布局。标题“Android...

    Android 实现软键盘与EditText的交互.zip

    在Android开发中,软键盘与EditText的交互是一个常见的需求,特别是在设计输入界面时。这个压缩包文件"Android 实现软键盘与EditText的交互.zip"包含了关于如何处理Android应用中软键盘与EditText之间的交互问题的...

    datepickerdialog禁止自动弹出键盘

    除了以上方法,还可以尝试在布局文件中为包含`DatePickerDialog`的根视图设置`android:descendantFocusability="beforeDescendants"`,这样可以防止子视图获取焦点并弹出键盘。 请注意,这些方法可能受到不同设备或...

    禁止软键盘弹出,自定义键盘

    在移动设备上,软键盘是用户输入文本的常见方式,但在某些特定场景下,例如游戏、全屏应用或自定义输入界面,我们可能需要禁止软键盘自动弹出,并且使用自定义键盘来替代。本教程将详细介绍如何实现这一功能。 首先...

    监听软键盘的弹出与收起

    在Android开发中,软键盘的弹出与收起是一个常见的交互事件,对于界面布局和用户体验有着重要影响。本文将深入探讨如何在Android应用中监听软键盘的弹出与收起,以及实现这一功能的一些关键技术和策略。 首先,软...

    editview软键盘自动弹出和隐藏

    总之,“editview软键盘自动弹出和隐藏”涉及了Android中对软键盘显示与隐藏的控制,这对于创建用户友好的输入界面至关重要。通过理解和实践这些技巧,开发者能够更好地定制他们的应用交互,提高用户体验。

    android 全屏弹出dialog,底部弹入,底部弹出+弹出dialog输入法

    本文将详细介绍如何实现一个全屏弹出的Dialog,并且重点讨论如何实现底部弹入和底部弹出的效果,以及如何处理Dialog与输入法的交互。这个功能在很多应用场景中都非常有用,比如在登录、注册或者评论等场景,用户可能...

    android监听软键盘的弹出与隐藏的示例代码

    在Android开发中,软键盘的弹出与隐藏是一个常见的用户交互情景。由于软键盘占据了一部分屏幕空间,其弹出和隐藏会对界面布局产生影响。当软键盘弹出时,如果没有适当的监听机制,可能会导致用户界面上的内容被键盘...

    选择日期时间对话框,解决弹出键盘问题

    总结来说,Android的`DatePickerDialog`和`TimePickerDialog`提供了一种方便的方式来获取用户的日期和时间选择,同时通过适当的处理,我们可以避免弹出软键盘对用户体验造成的影响。熟练掌握这些对话框的使用,对于...

    android 弹出窗口

    下面将详细探讨Android弹出窗口的相关知识点。 1. **PopupWindow的基本使用** - 创建PopupWindow:首先,我们需要创建一个PopupWindow实例,传入一个View作为其内容视图,宽度和高度。例如: ```java View ...

    android ListView中EditText被选中时弹出键盘会丢失EditText的焦点

    然而,在实际应用中,我们可能会遇到一个问题:当ListView中的一个EditText被选中并弹出软键盘时,EditText会失去焦点,导致用户无法正常输入。这个问题在很多应用中都会出现,尤其是在需要在列表项中进行编辑的情况...

    监听软键盘的弹出与收起(近乎完美的)

    在Android开发中,软键盘的弹出与收起是一个常见的需求,特别是在输入框交互和界面布局自适应时。本文将详细介绍三种实现软键盘监听的方法,帮助开发者选择最适合自己的方案。 一、方法一:使用InputMethodManager...

    android adjustNothing下获取键盘高度

    在Android开发中,当用户在应用中使用软键盘时,屏幕布局可能会受到键盘弹出的影响。特别是对于那些希望保持背景不随键盘移动的应用,开发者需要掌握如何在`adjustNothing`模式下处理键盘出现时的问题。`...

    Android解决软键盘弹起时遮住登录按钮的问题

    通过以上步骤,我们便成功解决了Android应用中软键盘弹出遮挡登录按钮的问题,实现了点击空白区域收起软键盘的效果,以及11位手机号的格式化显示。这些优化可以显著提升用户在使用登录界面时的体验。

    android 自定义AlertDialog弹出键盘可以输入的

    综上所述,自定义`AlertDialog`弹出键盘可以输入的实现主要涉及以下几个步骤:创建自定义布局、设置对话框内容和事件处理、调整Activity的`windowSoftInputMode`属性。这使得用户能在对话框中直接输入,提升了交互...

    软键盘弹出动态改变UI布局

    在Android开发中,软键盘的弹出与隐藏经常会引发UI布局的变化,这涉及到对Activity的布局管理以及输入法状态的监听。本示例"软键盘弹出时动态改变UI布局学习Demo"着重讲解如何处理这一常见问题,以提供良好的用户...

    Android 解决软键盘遮挡登陆按钮

    在AndroidManifest.xml中,为对应的Activity设置此属性,系统会在软键盘弹出时尝试调整Activity窗口大小,以便显示更多内容。例如: ```xml android:name=".YourActivity" android:windowSoftInputMode=...

    Android监听软键盘弹出与隐藏的两种方法

    这两种方法可以帮助开发者在Android应用中有效地监听软键盘的弹出与隐藏,从而实现自定义的UI交互和逻辑处理。需要注意的是,由于Android系统的差异性,这些方法可能在某些设备或Android版本上表现不一致,因此在...

    无软键盘弹出EditText

    在Android开发中,有时我们可能需要在特定场景下防止EditText组件自动弹出软键盘,比如在全屏应用、密码输入或者底部导航栏等界面。"无软键盘弹出的EditText"是一个常见需求,主要是为了优化用户体验或者满足特殊...

Global site tag (gtag.js) - Google Analytics