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

来源:互联网 发布:九宫图算法15 编辑:程序博客网 时间:2024/05/02 20:50

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是在下面的地方。


0 0
原创粉丝点击