android编辑框显示,android – 如何在屏幕上显示文本编辑框?

您的问题最简单的解决方案是在您主要(肖像修复的)活动中启动的单独的对话框主题的活动中显示您的EditText.

EditText Activity不应该将其方向固定,因此它会沿着您滑出键盘时的期望旋转.

创建文本输入活动

创建一个新的活动,只包含EditText视图和其他任何你想要包括(可能是/取消按钮,也许一个标签?).在清单中将其主题设置为Theme.Dialog.

android:label="My Activity"

android:theme="@android:style/Theme.Dialog"/>

通过修改前台活动(您的文本输入对话框)的窗口属性来完成对话框后面的活动或模糊活动.在它的onCreate方法中使用getWindow().setFlags将模糊应用于任何背景活动.

getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,

WindowManager.LayoutParams.FLAG_BLUR_BEHIND);

从文本输入活动启动和读取输入的值

使用startActivityForResult启动文本条目Activity.在该Activity中,调用setResult,使用this post中描述的技术返回返回意图中输入的文本字符串.

覆盖onActivityResult方法以侦听子活动的结果.

触发启动键盘暴露

您可以随时启动文本条目活动,但如果要在显示键盘时始终显示它,则可以明确捕获此事件.

首先将android:configChanges属性添加到portrait活动的清单条目.应该注册来监听keyboardHidden.

android:configChanges="keyboardHidden"

在该Activity中,覆盖onConfigurationChanged以启动文本条目Activity.

@Override

public void onConfigurationChanged(Configuration newConfig) {

Intent i = new Intent(this,TextEntryActivity.class);

startActivityForResult(i, STATIC_INTEGER_VALUE);

}

您可能需要检查以确认在启动文本条目Activity之前使用newConfig变量来显示键盘(而不是隐藏).

当隐藏键盘时,您可能还想使用相同的技术自动从文本输入活动返回.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值