您的位置:首页 > 移动开发 > Cocos引擎

Cocos2d-x 2.2.2版本CCEditbox 遇到的bug

2015-06-17 10:33 239 查看
Cocos2d-x 2.2.2 CCEditbox 遇到的bug

汇总了自己遇到的问题和解决办法,如果有不对的地方,还请大家指正

1.CCEditbox 虚拟键盘弹出的问题

ios8上面自动弹出键盘后,显示的画面左右移动。。

此问题合并官方代码https://github.com/cocos2d/cocos2d-x/pull/8149

另外此问题在竖屏launch,然后进入横屏的游戏的情况下,可能还有问题
还需要改http://www.cocoachina.com/bbs/read.php?tid-271139.html

2.CCEditbox在retina屏幕上面的bug:位置不对,字体大小不对
CCEditBoxImplIos.h
增加两个变量

bool m_bInRetinamode;
float m_fScaleFactor;

在CCEditBoximplIos.mm里面初始化:

m_fScaleFactor = [[EAGLView sharedEGLView] contentS
9b94
caleFactor]; 

m_bInRetinaMode = m_fScaleFactor >= 2.0f ? true : false;

这里的2.0是因为一般retina是像素点是分辨率的两倍,plus是3倍

在这个.mm里面 需要把判断retina的2.0的地方,改成取真是的retina比例,然后就是各种算吧

3.CCEditBox 父节点执行action位移后,keyboard 光标停留在初始位置。
等待父节点,执行完毕后,重新设置editBox position。
或者 :http://www.cnblogs.com/lan0725/p/3210963.html

4.cocos2d-x----- CCEditBox不能对其父容器进行缩放,否则在retina屏下会出现点击后文字很小的问题,原理是对父容器缩放时,CCEditBox包含的iOS输入框并没有缩放,所以点击后真正的输入框回到了缩放前大小。为了解决这个问题,应该把CCEditBox放在一个单独的不可缩放容器里,或者创建CCEditBox时对EditBox的大小进行比例缩放,位置也需要计算按比例来写
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cocos2d-x CCEditbox