NDK中如何得知某些输入法的"向下隐藏"按钮被按下? 用addOnLayoutChangeListener也不行 得到的尺寸始终是 800*480 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个问题我也遇到过,但似乎还没有很好的解决办法。据我了解,这个隐藏按钮是输入法自己设置的,不是系统规定的,所以它的触发事件不会被系统响应。我的处理方法:1.如果响应隐藏按钮是为了关闭EditText,那可以在屏幕上显示EditText,让用户自行关闭EditText2.可以通过监听返回键来判断是否关闭输入法。这两种方法都是绕弯路,并且没能直接解决监听隐藏按钮的问题。 返回键我倒是监听并且Log了,但隐藏时并没有按键,没有返回键也没有回车键(可能不同的输入法实现不同)我找到一个开源的输入法源码查看了,似乎点击隐藏的时候,输入法只是把自己的窗口注销了,没做别的https://codeload.github.com/hilarycheng/another_android_cangjie/zip/master(CloseButton.java)我主要是想点击那个向下隐藏按钮的时候,让程序退出输入状态。就像点“完成”、“返回”时一样的效果,目前是实现不了了,只能让用户再点一次编辑框,再点完成或者返回。(比如在屏幕下半部分画个提示文字)另外我发现addOnLayoutChangeListener实际上是可以的,前提是程序不是全屏模式,在非全屏模式下,回调procedure onLayoutChange(v: JView; left: Integer; top: Integer; right: Integer; bottom: Integer; oldLeft: Integer; oldTop: Integer; oldRight: Integer; oldBottom: Integer); cdecl;给的参数是对的,但一旦设置为全屏 就傻了像QQ欢乐斗地主之类,它里面的输入法(应该是用了cocos2d-x),应该是建立了个Cocos2dxEditText (extends EditText)然后提到前台,是创建了Java的Edit控件,然后打开的输入法。此时是非全屏模式,如果用手指从顶部往下拉,可以看到状态栏出来了,同时Edit被压缩得更小,过一会儿,状态栏会自动隐藏,此时Edit又自动扩大了,我想,它应该是用的wrap_content选项,而且它应该就是通过onLayout/onSize之类的判断输入法是否关闭,当输入法关了的时候,onLayout/onSize的参数会变大,这时候就知道:输入法被关闭了,然后就退出编辑模式,返回来。。我就不知道它的状态栏会自动隐藏是怎么做的? 如果能做到:非全屏模式,但状态栏会自动隐藏,那么就是变相的全屏模式同时又能得到正确的OnLayout,也可以 android机器播放VLC串流RTSP的问题 android界面设计中的listview 关于绑定监听器的错误! android掉用WCF的正确方式 【求助】 多任务下载的实现 关于Eclipse开发中xml代码助手的问题: 如何将PopupWindow的现实位置设置在某一组件下边? 自定义ArrayAdapter如何做到真正的动态添加VIEW Genymotion不能启动 在使用opencv出现 有没有这样的方法String.format("aaa%d, bbb%d, ccc%d", "我","你", “他”); 请教个关于webView的问题,在线等
我的处理方法:
1.如果响应隐藏按钮是为了关闭EditText,那可以在屏幕上显示EditText,让用户自行关闭EditText
2.可以通过监听返回键来判断是否关闭输入法。
这两种方法都是绕弯路,并且没能直接解决监听隐藏按钮的问题。
https://codeload.github.com/hilarycheng/another_android_cangjie/zip/master
(CloseButton.java)我主要是想点击那个向下隐藏按钮的时候,让程序退出输入状态。就像点“完成”、“返回”时一样的效果,
目前是实现不了了,只能让用户再点一次编辑框,再点完成或者返回。(比如在屏幕下半部分画个提示文字)另外我发现addOnLayoutChangeListener实际上是可以的,前提是程序不是全屏模式,在非全屏模式下,回调
procedure onLayoutChange(v: JView; left: Integer; top: Integer; right: Integer; bottom: Integer; oldLeft: Integer; oldTop: Integer; oldRight: Integer; oldBottom: Integer); cdecl;
给的参数是对的,但一旦设置为全屏 就傻了像QQ欢乐斗地主之类,它里面的输入法(应该是用了cocos2d-x),应该是建立了个Cocos2dxEditText (extends EditText)然后提到前台,是创建了Java的Edit控件,然后打开的输入法。此时是非全屏模式,如果用手指从顶部往下拉,可以看到状态栏出来了,同时Edit被压缩得更小,过一会儿,状态栏会自动隐藏,此时Edit又自动扩大了,我想,它应该是用的wrap_content选项,而且它应该就是通过onLayout/onSize之类的判断输入法是否关闭,当输入法关了的时候,onLayout/onSize的参数会变大,这时候就知道:输入法被关闭了,然后就退出编辑模式,返回来。。我就不知道它的状态栏会自动隐藏是怎么做的?
也可以