لود عکس توسط xml در فلش ( تحت وب )

naslsevomi

New Member
سلام دوستان



یه فایل فلش دارم که قراره از داخل اینترنت یه فایل xml رو بخونه
(فایل xml رو آپلود کردم و آدرس کاملش رو گذاشتم توی فلش. مثلا http://....................../file.xml)


وداخل اون xml آدرس چند تا عکس هست که باید اونها رو معرفی کنه به فلش

وقتی swf رو اجرا می کنم فایل xml رو می خونه و تعداد عکسها رو مشخص می کنه اما عکس ها لود نمی شوند.

آدرس عکسها در xml را هم مثل آدرس بالا کامل نوشتم و از درست بودنشون مطمئنم.



مشکل لود نشدن عکسها کجاست ؟



 
 

++Hadi++

Active Member
احتمالا ایکسملتون لود شده ولی عکس ها لود نشدند.
احتمالا با اکشن 2 کار می کنید ولی من به اکشن 3 می نویسم شما می تونین معادل اکشن 2 رو با یه سرچ به دست بیارین... می تونین آدرس مطلق مکانی که فلش توش هست رو با دستور زیر به دست بیارین:
stage.loaderInfo.url
می تونین به آدرس مطلق فلشتون که بازه دسترسی داشته باشین
خوب یه تابع می نویسین به صورت زیر :


PHP:
function get getHere():String
{
    var AddStr:String=stage.loaderInfo.url;
    var arr:Array=AddStr.split('/');
    //arr.splice(0,1);//1 to n please test
    arr.splice(arr.length-1,1);
    AddStr=arr.join('/')+'/';
    return AddStr;
}
این تابع بع راحتی آدرس روت فولدری رو که فلشتون توش هست رو بدون اسم swf بهتون می ده.شاید لازم باشه یه سری از چیزای ابتدای آدرس رو هم حذفش کنین ولی بعید می دونم.
بعد همه آدرس ها رو در هنگام عمل IO به صورت نسبی نه مطلق(نه از بیخ روت سرور - مثلا اگه بغل فلشتون هست،فقط اسم اون فایل رو - چه ایکسمل چه عکس)می نویسین و قبلش این تابع رو به شکل زیر صدا می زنید :
PHP:
loader.load(new URLRequest(getHere+"Address"));
صدا می زنین تا آدرس مطلق جایی که swf هست رو در بیاره و بعد برو اون فایلو بخونه.البته فک کنم تو فلشی که تو یه html لود می شه آدرس های فلش از روت html حساب می شه نه از روت فلش...
پس یااین کار آدرس کامل رو به آدرس نسبی وصل و اضافه کردین ...

حالا در کل کار شما با این تابع مثل حالت زیر می شه :
PHP:
import flash.display.Loader;
import flash.net.URLRequest;

var loader:Loader=new Loader();
loader.load(new URLRequest(getHere+"Pic.jpg"));
trace(getHere+"Pic.jpg");
البته تست کنین فک کنم مشکل حل می شه چون منم با همین روش مشکلی مشابه مشکل شما رو حل کردم.
بای...
 

جدیدترین ارسال ها

بالا