⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 book.as

📁 as3.0 翻书效果
💻 AS
字号:
/**
* 书体容器类;
* @author crlnet
* @version 1.1
*/

package crlclr{
	
	import crlclr.Interface.IResizeable;
	import crlclr.data.PageData;
	
	import flash.display.*;
	import flash.events.*;
	import crlclr.Page;
	
	public class Book{
		
		private var data:Qxml;
		private var pageList:Array;
		private var pageCanTear:Array;
		public static var Instance:Book= new Book();

		public static function getInstance():Book{
			return Instance;
		}
		
		public function Book(){
			if(Instance!=null){
				throw new Error("单件")
			}
			pageList=new Array();
			pageCanTear=new Array();
		}
		
		/**
		* 只写属性.
		* @param	data
		*/
		public function set Data(data:Qxml){
			this.data=data;
			this.createChildren();
		}
		
		private function createChildren():void{
			var len:int=data.Length;
			
			var w:int=data.PageWidth
			var h:int=data.PageHeight;
			
			pageList.push(new BlankPage());
			pageCanTear.push(false)
			for(var i:int=0;i<len;i++){
				var page:Page=new Page(w,h);
				page.isRight=Boolean((i+1)%2);
				page.Data=data.PageDataList[i] as PageData;
				page.loadThumb();
				pageList.push(page);
				//
				pageCanTear.push(false)
			}
			pageCanTear.push(false)
			pageList.push(new BlankPage());
		}
		public function get canTearList():Array{
			return this.pageCanTear;
		}
		public function get List():Array{
			return this.pageList;
		}
		public function getPage(index:int){
			return this.pageList[index];
		}
		public function get Lenght(){
			return this.pageList.length;
		}
		
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -