博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Cocos2d-x3.0 载入Cocostudio的UI后,button无法点击的解决方法
阅读量:5842 次
发布时间:2019-06-18

本文共 958 字,大约阅读时间需要 3 分钟。

近期发现不少朋友都遇到这个问题,用Cocostudio的UI编辑器创建好UI后。在代码中载入UI,然后给button(Button)加入点击监听事件。发现不管怎样都点击不了button,没有不论什么反应。

或者,往button的以下一些位置点击,却发现button被点击了,点击坐标的位置明显和button的位置有偏差。

 

 

笨木头花心贡献,啥?花心?不呢。是用心~

转载请注明,原文地址: 

文章来源:

 

 

假设你也遇到这种问题。最好还是进行一个简单的操作。

打开AppDelegate.cpp类。在AppDelegate::applicationDidFinishLaunching函数里,当中一段代码:

 
  1. auto director = Director::getInstance();
  2. auto glview = director->getOpenGLView();
  3. if(!glview) {
  4.     glview = GLView::create("My Game");
  5.     glview->setFrameSize(800,1280);
  6.     director->setOpenGLView(glview);
  7. }

看看这句代码:glview->setFrameSize(800,1280); 或许你的代码里没有这句,不管有没有,接下来要做的都一样。

把这句代码改为(没有这句代码的就加上):glview->setFrameSize(600,400);

 

里面的数字大小你自己定,可是要注意。不要超过你的电脑显示器分辨率的大小。

一旦游戏窗体宽高大于你的显示器分辨率,就会出现UIbutton无法点击或者点击错位的现象。

 

不信的话。大家能够试试把游戏窗体的高设成一个非常大的值(大于你的显示器分辨率的高),比方:glview->setFrameSize(800,4280);

然后执行游戏,你会发现。游戏窗体的高并没有想象中的高,它变得和你的显示器的一样的高。

或许这是Cocos2d-x3.0之后特意这么做的,为的是避免你设置的宽高太大而无法完整显示游戏窗体,却导致UIbutton点击坐标错位的问题。

 

这个仅仅是在Windows平台上的问题而已,无关紧要,仅仅是会影响測试。所以。最好不要把游戏窗体的宽高设置地超过你的显示器分辨率。

 

你可能感兴趣的文章
[LeetCode] Copy List with Random Pointer
查看>>
openstack部署之nova
查看>>
JS组件系列——表格组件神器:bootstrap table
查看>>
存储过程Oracle(一)
查看>>
log4j日志归档
查看>>
Java笔记01——IO流
查看>>
mysql遇见error,1049
查看>>
NYOJ311 完全背包
查看>>
codevs——2822 爱在心中
查看>>
Python基础班---第一部分(基础)---Python基础知识---认识Python
查看>>
JAVA MAC 配置
查看>>
1134 最长上升子序列 (序列型 DP)
查看>>
js冒泡排序
查看>>
第一次作业 4班卢炳武
查看>>
抽象类的调用
查看>>
使用硬盘,安装双系统,Win7+CentOS
查看>>
Javascript学习总结
查看>>
php 用正则替换中文字符一系列问题解决
查看>>
ActiveMQ应用笔记一:基本概念&安装
查看>>
大话数据结构之四(串)
查看>>