cocos2dx vs下模拟器屏幕变大后的触摸偏移

前端之家收集整理的这篇文章主要介绍了cocos2dx vs下模拟器屏幕变大后的触摸偏移前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

http://blog.csdn.net/huangkaipeng/article/details/48050465


Cocos2dx 模拟器屏幕变大后的触摸偏移

之前我的屏幕设置是比较小的glview->setFrameSize(320,480);所以并没有出现什么问题

后面因为在手机上显示太小了。所以我在调试的时候就把模拟器大小调大,调到了glview->setFrameSize(640,1136)

却突然发现触摸事件响应不了。

后面经过测试发现是触摸偏移向下了。

所有的触摸事件都是这样。

后面搞了好久才知道是为什么。

当framesize设置得太大模拟器屏幕会超出显示器的显示范围。

可是这个时候我观察到不管设置的多大,模拟器只会超出显示器固定的部分。frameSize的高设的再大,模拟器的屏幕大小也不会再大,但是这时里面的内容都会向上偏移。

glview->setFrameSize(640,1100);

glview->setFrameSize(640,2000);


然后我看到左下角三行数据一直是在那里,我就想测试一下那里对应的position,结果发现framesize高设的越大的相对应的GL verts position越高。我又测了一下在显示器范围内的模拟器中GL verts这一行的高度。发现都是一样的。

所以发生触摸偏移是因为你的framesize设置的太大了。超出了显示显示范围。

导致坐标偏移了。你看到按钮在那里,可是它的真实position是在下面的地方。

猜你在找的Cocos2d-x相关文章