FLASH加载XML相册
生活随笔
收集整理的這篇文章主要介紹了
FLASH加载XML相册
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
剛剛制作完簡單的flash相冊后在網上搜索下,又找到一個分頁相冊,目前還沒全部弄明白,先轉載上來,再學習吧。
關于FLASH加載XML相冊,在網上百度一下。一大把源碼。但大多都沒給出完整教程。剛好最近在寫一個相冊,所以把完整過程記錄一下。
下面講解詳細過程:
1、首先,新建一個文件夾,文件夾的名稱隨你怎么取都OK,用于存放本相冊的所有文件。
2、然后在文件夾中新建imageda、imagexiao、image.xml、Taoshaw_Photos.fla文件。如圖所示:
3、然后處理一些圖片放進imageda與imagexiao目錄中,imagexiao目錄中的圖片大小為50*50。即,小圖片大小。在imageda目錄中的圖片大小為272*271。當然,這里是我的標準,大家可以自己定義大小的。
4、新建xml文件。寫XML和格式標準,在此不再多說。內容如下:
5、新建FLASH中。建立六個圖層,圖層名稱如下:
6、然后分別建立背景黑色條、大圖片背景、加載進度條、按鈕等元件。
7、有一個關鍵的步驟,新建一空影片剪輯。然后拖到場景中,并賦予實例名“pic_holder_mc”。
8、然后在as層中添加代碼:
9、代碼及詳細講解如下:
<imgtao>
<img srcxiao="imagexiao/1.jpg" srcda="imageda/1.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/2.jpg" srcda="imageda/2.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/3.jpg" srcda="imageda/3.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/4.jpg" srcda="imageda/4.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/5.jpg" srcda="imageda/5.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/6.jpg" srcda="imageda/6.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/7.jpg" srcda="imageda/7.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/8.jpg" srcda="imageda/8.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/9.jpg" srcda="imageda/9.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/10.jpg" srcda="imageda/10.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/1.jpg" srcda="imageda/1.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/2.jpg" srcda="imageda/2.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/3.jpg" srcda="imageda/3.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/4.jpg" srcda="imageda/4.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/5.jpg" srcda="imageda/5.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/6.jpg" srcda="imageda/6.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/7.jpg" srcda="imageda/7.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/8.jpg" srcda="imageda/8.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/9.jpg" srcda="imageda/9.jpg" info="歡迎光臨淘沙網"/>
<img srcxiao="imagexiao/10.jpg" srcda="imageda/10.jpg" info="歡迎光臨淘沙網"/>
</imgtao>
?
//================版權聲明開始================////★淘沙網:http://www.taoshaw.com
//★淘沙網所有教程歡迎轉載。不過請轉載時注明出處。謝謝合作。
//================版權聲明結束================//
this["loading_mc"]._visible = false;
//統一編碼
System.useCodepage = true;
//定義總數量
var _total:Number = 20;
//定義每頁顯示數量
var page_size:Number = 4;
//計算總頁數
var pages:Number = Math.ceil(_total/page_size);
var cur_page:Number = 1;
//定義XML類
var my_xml:XML = new XML();
//定義用于接收小圖片的數組
var my_small_arr:Array = new Array();
//定義用于接收大圖片的數組
var my_big_arr:Array = new Array();
//定義用于接收文本信息的數組
var my_info_arr:Array = new Array();
//設置加載路徑
my_xml.load("image.xml");
//去掉空格
my_xml.ignoreWhite = true;
//定義用于加載小圖的MovieClipLoader類
var my_smallClip:MovieClipLoader = new MovieClipLoader();
//定義用于顯示加載小圖信息的新項目
var my_smallObj:Object = new Object();
my_smallObj.onLoadInit = function(mc):Void {
//設置小圖片的寬度
mc._width = 50;
//設置小圖片的高度
mc._height = 50;
//設置小圖片距離左側注冊點的距離(橫向上的)
mc._x = 3;
//設置小圖片距離左側注冊點的距離(縱向上的)
mc._y = 2;
};
//添加監聽
my_smallClip.addListener(my_smallObj);
//定義用于加載小圖片被點擊后,加載的大圖片的MovieClipLoader類
var my_bigClip:MovieClipLoader = new MovieClipLoader();
//定義用于顯示大圖片位置等信息的項目
var my_bigObj:Object = new Object();
my_bigObj.onLoadInit = function(mc):Void {
_root.loading_mc._visible = false;
//設置大圖片的寬度
mc._width = 272;
//設置大圖片的高度
mc._height = 271;
//設置大圖片距離左側注冊點的距離(橫向上的)
mc._x = 120;
//設置大圖片距離左側注冊點的距離(縱向上的)
mc._y = 107;
};
//添加監聽
my_bigClip.addListener(my_bigObj);
//設置加載成功代碼
my_xml.onLoad = function(ok:Boolean):Void {
//如果加載成功,則運行如下代碼
if (ok) {
//定義加載XML內容的數量
var my_pic_len:Number = my_xml.firstChild.childNodes.length;
for (var i:Number = 0; i<MY_PIC_LEN; {
//定義node變量,這樣做的目的只是為了后面代碼的簡化
var node = my_xml.firstChild.childNodes;
//將加載的內容添加進前面定義的小圖片、大圖片、文字信息數組中
my_small_arr.push(node.attributes.srcxiao);
my_big_arr.push(node.attributes.srcda);
my_info_arr.push(node.attributes.info);
}
//以下用于顯示加載的小圖片
for (var i:Number = 0; i<5; i++) {
_root["press_btn"+i].img = my_big_arr;
//在按鈕上面新建一個空的MC
var mc:MovieClip = _root["press_btn"+i].createEmptyMovieClip("mc", 100+i);
//加載圖片
my_smallClip.loadClip(my_small_arr, mc);
//當按鈕被點擊的時候,就加載大圖片
_root["press_btn"+i].onPress = function():Void {
//加載大圖片對象
my_bigClip.loadClip(this.img, pic_holder_mc);
//根據XML信息,顯示圖片說明
info_txt.text = my_info_arr;
_root.loading_mc._visible = true;
};
//默認情況下加載一張大圖片
my_bigClip.loadClip(my_big_arr[0], pic_holder_mc);
}
} else {
}
};
//上一頁按鈕代碼
pre_mc.onRelease = function() {
load_images(_root.cur_page-1);
};
//下一頁按鈕代碼
next_mc.onRelease = function() {
load_images(_root.cur_page+1);
};
//自定義加載分頁時數據
function load_images(page:Number) {
//當總頁數小于1時,顯示第一頁內容
if (page<1) {
page = 1;
} else if (page>_root.pages) {
page = _root.pages;
}
if (page == cur_page) {
return;
}
_root.cur_page = page;
var start_index = _root.page_size*(page-1);
for (var i:Number = 0; i<5; i++) {
if (i>=_total) {
break;
}
_root["press_btn"+i].img = my_big_arr[start_index+i];
//在按鈕上面新建一個空的MC
var mc:MovieClip = _root["press_btn"+i].createEmptyMovieClip("mc", 100+i);
//加載圖片
my_smallClip.loadClip(my_small_arr[start_index+i], mc);
//當按鈕被點擊的時候,就加載大圖片
_root["press_btn"+i].onPress = function():Void {
my_bigClip.loadClip(this.img, pic_holder_mc);
_root.loading_mc._visible = true;
};
}
}
轉載于:https://www.cnblogs.com/caocaoyu/archive/2009/03/26/1422467.html
總結
以上是生活随笔為你收集整理的FLASH加载XML相册的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 艾宾浩斯记忆遗忘曲线
- 下一篇: 百度分享js代码