关于 版本2.1.2的 editbox 的体验问题

  • Creator 版本:2.1.2

  • 目标平台:android (ios)

  • 之前哪个版本是正常的 :1.9.3

  • 手机型号 :android随意机型

  • 编辑器操作系统 :android

关于editbox 的体验,再之前1.9.3的体验还算不错,后续不知道为什么改版成现阶段这种而外带着输入栏的,体验极差。

再android上还会控制游戏界面向上推移。如果向上推移的比例控制好,能看到界面上的输入框也就算了,但是,这个推移完全不具备这个条件,那推移何用?而且点击还会使玩家有个频繁推动的晃动感。

不管是个人,还是团队策划都喜欢原先1.9.3那种,向上推动,但是比例控制好可以看到游戏界面中的输入框。

目前只能自己做了,但是对于android的代码不是很熟,希望官方大佬能给个较为舒适的解决方案。

起码,先给个如何让android跟ios一样不用游戏界面向上滚动方案。跪拜大佬

例子(借用别人的帖子图片):


Android 获取不到键盘的高度,而且不同手机、不同系统版本还不一样,因此 1.x 的键盘推动也是不准确的。而且 2.x 输入框的设计策略也和 1.x 不同了,原生只是返回输入内容给引擎,由 JS 引擎控制所有的布局、显示。

可以改成只弹键盘,不把屏幕往上推

能告于editbox的js脚本位置吗?

@sixian 这样也可能出现键盘把输入框挡住的情况。

@Knox @_PP 你们看一下。

嗯,这个可以先看一下。

挡住已经不是关键,关键是我需要知道如何去修改不然他向上滚动界面。劳驾了

Android 的键盘和键盘上面的输入框是分开的。那个输入框是系统的一个控件,放在屏幕的最下端,平时隐藏,需要时显示。如果要做到键盘不把整个屏幕往上推,那么就要动态修改这个输入框的位置。但是 Android 无法获取键盘的高度,这就导致输入的位置没法精确设置。

iOS 和 Android 不同,输入框是键盘的一部分。

明白你们大概的设计思维了,不过,对于android的代码真是有点不熟悉,有没办法提供一份简单的案例源码。减少我们这里的修改时间

简单的案例源码指的是什么?如果是说 Android 相关的代码的话,那么是在 Cocos2dxEditbox.java 这个文件。

为什么editbox 不能想lua 和原生 C++ 那种方案? 体验好很多

虽然这么说有点唐突,确实本人对于android不是很熟悉,能不能修改一份Cocos2dxEditbox发出来。

这个问题,我们内部讨论下,已经建立了相关 issue 跟踪,尝试在之后的版本修复上推的问题

@_PP 现在的燃眉之急如何解决

@superdadiao666 https://github.com/cocos-creator/cocos2d-x-lite/pull/1946 ,你可以试试。

不管行不行,先跪拜一方,谢谢大佬

测试过,俩个问题,第一:弹起有效,但是没有原先显示栏,第二,输入又变回原先样式。

你指的是输入框吗?

指的是屏幕还是会弹起?

你是什么手机测试的?方便的话,能否录屏看看?

是我几个修改文件没改进去,已经可以了,剩下我做推动的效果就好了。谢谢,辛苦了

好的。不过我测试了几款手机,发现有些手机刚开始没有显示输入框,需要输入内容后,输入框才会显示出来。在刚开始输入时,系统又调整了窗口的位置。