cocos2d js 3.2PageView의 간단한 사용

2651 단어
PageView는 GUITEST에서 다음과 같은 간단한 사용 코드와 관련된 예제 코드를 볼 수 있습니다.
var PageViewScene = cc.Scene.extend({
	pageView : null,
	pageIdx : 0,
	onEnter:function () {
		this._super();

		var winSize = cc.winSize;

//		var sprBg = new cc.Sprite(res.PageBg_png);
//		sprBg.attr({
//		x : winSize.width/2,
//		y : winSize.height/2
//		});
//		this.addChild(sprBg);

		// ccui   cc      
		var img = new ccui.ImageView();
		img.loadTexture(res.PageBg_png);
		img.attr({
			x : winSize.width/2,
			y : winSize.height/2
		});
//		img.x = winSize.width/2;
//		img.y = winSize.height/2;
		this.addChild(img);

		//    
		this.pageView = new ccui.PageView();
		this.pageView.setTouchEnabled(true);
		this.pageView.setContentSize(winSize.width, winSize.height);
//		this.pageView.x = winSize.width/2;
//		this.pageView.y = winSize.height/2;

		for (var i = 0; i < 3; i++) {
			//   pageview
			var layout = new ccui.Layout();
			layout.setContentSize(winSize.width, winSize.height);
			var layoutRect = layout.getContentSize();

			var img = new ccui.ImageView();
			img.loadTexture("res/page/boss_0"+(i+1)+"_normal.png");
//			img.setContentSize(layoutRect.width, layoutRect.height);
			img.x = layoutRect.width/2;
			img.y = layoutRect.height/2;
			layout.addChild(img);

			//   layout   ===    
//			layout.x = winSize.width/2;
//			layout.y = winSize.height/2;

			//    pageview
			this.pageView.addPage(layout);
		}

		this.pageView.addEventListener(this.pageViewEvent, this);

		this.addChild(this.pageView);
		
		//              
		cc.eventManager.addListener({
			event : cc.EventListener.KEYBOARD,			//     
			onKeyPressed : this.onKeyPressed,
			onKeyReleased : this.onKeyReleased
		}, this);
	},
	pageViewEvent: function (sender, type) {
		switch (type) {
		case ccui.PageView.EVENT_TURNING:
			var pageView = sender;
			cc.log("page:" + pageView.getCurPageIndex());
			break;
		default:
			break;
		}
	},
	onKeyPressed : function(key, event) {
		// android                   
	},
	onKeyReleased : function(key, event) {
		//          
		cc.log("key:" + key);
		switch (key) {
		// android TV:  :159   :160  :161  :162 OK:163 MENU:18  BACK:6
		case TagOfKeyTv.Left:	//    android:161 win32:28
			event.getCurrentTarget().pageIdx++;
			event.getCurrentTarget().pageView.scrollToPage(event.getCurrentTarget().pageIdx);
			break;
		case TagOfKeyTv.Right:
			event.getCurrentTarget().pageIdx--;
			event.getCurrentTarget().pageView.scrollToPage(event.getCurrentTarget().pageIdx);
			break;

		default:
			break;
		}
	}
});

버튼 관련 처리가 들어가 있어 필요 없는 건 무시하셔도 됩니다.
cc 시리즈와 ccui 시리즈는 서로 통용됩니다.

좋은 웹페이지 즐겨찾기