COCOS2D创建菜单,按钮区域和文字显示不一致

遇到这个问题也是醉了,看以半天也没有结局最后发现是配置问题,真是晕倒。

问题是这样的,不描述了直接上图:


创建了这样的一个菜单,下面红色的框框是我截图的时候画上去的,代码如下:

var SceneTestScene = cc.Layer.extend({
		ctor:function () {
			this._super();
			var size = cc.director.getWinSize();

		/*	var bg = new cc.Sprite(res.background_png);
			bg.x = size.width/2;
			bg.y = size.height/2;
			this.addChild(bg);*/
			cc.MenuItemFont.setFontName("Times New Roman");						
			cc.MenuItemFont.setFontSize(86); 									
			var item1 = new cc.MenuItemFont("Start",this.menuItem1Callback,this);
			item1.attr({
			   x:size.width/2,y:size.height/2,anChorX:0.5,anChorY:0.5
			});
			
			var mn = new cc.Menu(item1,1); 								
			mn.alignItemsvertically();
			mn.setColor(cc.color(255,255,0));
			mn.x=size.width/2;
			mn.y=size.height/2;
			this.addChild(mn); 												
            return true;
		},menuItem1Callback:function (sender) {
			cc.log("我被点击了" + sender);
		}
	});
SceneTestScene.scene = function () {
	var scene = new cc.Scene();
	var layer = new SceneTestScene();
	scene.addChild(layer);
	return scene;
};
我希望点击Start文字至少是给我一点提示,结果没有任何的反应。但是点击下面红色框框内却没有任何的反应,这个多让人烦,我们在网上查看原因说什么是像素的问题。也许是和像素有点问题吧。

说是像素的问题也可以理解。

问题清楚了我们怎样来解决:

这个和我们的配置有关系:

首先要保证config.json:

    "init_cfg":{
        "isLandscape":true,"isWindowTop":false,"name":"CanyProject",------>      "width":960,------>      "height":640,"entry":"main.js","consolePort":6050,"debugPort":5086,"forwardConsolePort":10088,"forwardDebugPort":10086,"forwardUploadPort":10090
    },
要保证上面的宽和高要和main.js中的:

cc.game.onStart = function(){
    cc.view.adjustViewPort(true);
    cc.view.setDesignResolutionSize(640,960,cc.ResolutionPolicy.SHOW_ALL);
    cc.view.resizeWithbrowserSize(true);
    //load resources
    cc.LoaderScene.preload(g_resources,function () {
    	cc.director.runScene(SceneTestScene.scene());
    },this);
};
这个地方的640和960和上面的宽和高要一个个的对应
  cc.view.setDesignResolutionSize(640,cc.ResolutionPolicy.SHOW_ALL);
而且除此之外:

在config.json中的isLandscape:""这个要设置为true

如果这样的配置,我们需要保持是一直的,这样点击下去菜单才不会向下面偏。

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...