该网站已经迁移到:blog.xwdoor.net

图片编辑器–视图布局 View 悬浮在软键盘上

android xwdoor 353℃ 0评论

心急的同学,代码和结论在最后。
公众号ID:goodKotlin,名称:XWdoor

夸夸其谈

几乎所有的项目中,都会输入编辑框与软键盘,但是,不同项目 EditText 就会遇到不同的待遇:

  • 刚进界面就要弹出键盘
  • 刚进界面不要弹出软键盘,用户点击后才弹
  • 界面不要被软键盘顶上去
  • 软键盘只把这个编辑框顶上去

同样是软键盘,为什么有的被吃牢狱之灾,有的又像菩萨被供着呢?

就跟同样是来北京实现梦想的,为什么别人运气那么好,你运气那么背呢?

如果你是这么想的,那我得批评你:你需要向现实妥协,别人表面是运气好(也的确比你运气好),但是你不知道他背后有多努力,而你没有人家那运气,你还不努力,只有感叹,这就是你不对了。

所以,赶紧关注我的公众号,大家一起努力呀,这才是重点,哈哈。

关于软键盘那点事

接着上一篇文章来,讲讲我是怎么拿捏,哦不,伺候软键盘 SoftInput 的。不知道上篇内容的也不要紧,看链接:「图片编辑器--向上弹出文字编辑框(遮罩)界面」,当然,你不看也不影响阅读本篇文章。

我对软键盘的态度是:显示编辑界面后,弹出软键盘,并把布局 View 顶上去。

布局上添加 ScrollView

其实只要在布局中添加 ScrollView 控件,就能将整个布局顶上去。就像下边这样:

OK,加上 ScrollView 后,应该万事大吉了,就是这么简单。

等等,有新情况:软键盘出现时,的确将布局顶上去了,但是,最上边的两个「取消」「完成」按钮看不见了,下边的「tool bar」也看不见了,怎么肥四?!难道是上天不要我努力?

兄台别急,我来告诉你是什么情况:软件盘只保证 EditText 被顶上去,其他一律不管,所以你懂得。

所以我们只需要变通一下就好啦,我们将 ScrollView 的范围缩小就好,就像下边示范的一样:

这样就可以满足我们的所有要求啦。 基于 ScrollView 可滚动以及布局的特性,它包裹的元素越少越好,甚至不包含任何子 View,只当一个安静的美男子,哦,说错了,是一个空 ViewGroup。就像这样:

软键盘的显示与隐藏

对此,我封装了三个软件盘的扩展方法,你可以择机调用。如下:

最后

由于是科班出身,文笔不是很好,以后会逐步提高。如果有错误的地方,欢迎大家指正。

如果文章对你有帮助的话,欢迎关注公众号:goodKotlin,你的关注,就是最大的支持。

文章源码:GitHub: Ethos,欢迎大家给颗星星,哈哈。

微信公众号

转载请注明:xwdoor » 图片编辑器–视图布局 View 悬浮在软键盘上

喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址