DaDaDooDoo
کاربر VIP
سلام دوستان . یکی از مشکلات افراد مبتدی و تازه کار اینکه چطور باید کاری کرد که پروژه خودشو با رزولیشنهای مانیتور های مختلف تطبیق بدن . روشهایی برای اینکار وجود داره مثلاً روش چیدمان شناور که روش خوبی هست اما برای وب کاربرد داره و در نسخه های لوکال چندان جوابگو نیست . یا مثلاً اینکه کل محتوا رو داخل یک مووی کلیپ بزاریم و اونو الاین کنیم که این روش هم همیشه قابل استفاده نیست .
اما من به کمک یکی از دوستان ( از کاربرای فعال انجمن که اول اسمش با BioDread شروع می شه و متسفانه دیگه فعالیت نمی کنه ) این روش رو یاد گرفتم . (اونم کجا تو بانک ، بعدشم که فهمیدن کار بانکی نداریم محترمانه انداختنمون بیرون
و مجبور شدیم 3 بعد از ظهر زیر آفتاب ادامه بدیم ...) . بعد تصمیم گرفتم اونو تبدیل به یک کلاس بکنم تا استفاده ازش راحت بشه .( می خوام این رو تبدیل کنم به یک کلاس که یکسری قالب های استاندارد رو ساپورت کنه .)
البته استفاده از این روش خیلی آسونه و می شه با چند خط کد سرو تشو هم آورد و شاید هم نیاز به یک کلاس جداگانه نداشته باشه .
روش کلی کار اینه که با استفاده از :
و
رزولوشن مانیتور سیستمی رو که فایل روی اون اجرا شده بدست میارید . بعد موقعیت آبجکت هارو نسبت به اون تعیین می کنید .
اما 2 تا نکته مهم :
اول اینکه پروژه باید فول اسکرین باشه و حالت اسکیل غیر فعال :
دوم اینکه حتماً الاین استیج رو مشخص کنید که بهترین حالت TOP_LEFT هست :
با این روش مشکل فیت شدن کار با رزویوشن های مختلف حل می شه ( مخصوصاً در لوکال )
یک سمپل هم گذاشتم که یک کلاس هست که دو تا پارامتر ورودی می گیره :
1 - مووی کلیپ هدف (از نوع مووی کلیپ)
2 - موقعیتی که باید قرار بگیره ( از نوع استرینگ)
من برای دمو دو تا موقعیت پیش فرض تعریف کردم :
1 - TR ، که گوشه بالا سمت راست هست .
2 - BR ، که گوشه پایین سمت راست هست .
اگر چیزی به غیر از این پارامتر ها وارد کنید ارور Undefine Position می ده .
البته تابع کانسترکتور این کلاس پارامتر هارو می گیره ، که فکر کنم بهتره که یک متد واسه این کلاس تعریف کنم و پارامترها رو به اون پاس بدم .
دانلود کنید تا بیشتر بفهمید داستانو ... سوالی بود در خدمتم .
دوستان حرفه ای هم اگه ایده و نظری بدن خیلی عالی میشه .
اما من به کمک یکی از دوستان ( از کاربرای فعال انجمن که اول اسمش با BioDread شروع می شه و متسفانه دیگه فعالیت نمی کنه ) این روش رو یاد گرفتم . (اونم کجا تو بانک ، بعدشم که فهمیدن کار بانکی نداریم محترمانه انداختنمون بیرون

البته استفاده از این روش خیلی آسونه و می شه با چند خط کد سرو تشو هم آورد و شاید هم نیاز به یک کلاس جداگانه نداشته باشه .
روش کلی کار اینه که با استفاده از :
PHP:
Capabilities.screenResolutionX
PHP:
Capabilities.screenResolutionY
رزولوشن مانیتور سیستمی رو که فایل روی اون اجرا شده بدست میارید . بعد موقعیت آبجکت هارو نسبت به اون تعیین می کنید .
اما 2 تا نکته مهم :
اول اینکه پروژه باید فول اسکرین باشه و حالت اسکیل غیر فعال :
PHP:
stage.displayState = StageDisplayState.FULL_SCREEN;
stage.scaleMode = StageScaleMode.NO_SCALE;
دوم اینکه حتماً الاین استیج رو مشخص کنید که بهترین حالت TOP_LEFT هست :
PHP:
stage.align = StageAlign.TOP_LEFT;
با این روش مشکل فیت شدن کار با رزویوشن های مختلف حل می شه ( مخصوصاً در لوکال )
یک سمپل هم گذاشتم که یک کلاس هست که دو تا پارامتر ورودی می گیره :
1 - مووی کلیپ هدف (از نوع مووی کلیپ)
2 - موقعیتی که باید قرار بگیره ( از نوع استرینگ)
من برای دمو دو تا موقعیت پیش فرض تعریف کردم :
1 - TR ، که گوشه بالا سمت راست هست .
2 - BR ، که گوشه پایین سمت راست هست .
اگر چیزی به غیر از این پارامتر ها وارد کنید ارور Undefine Position می ده .
PHP:
var SetScreen:FitScreen = new FitScreen(Box_mc , "TR");
addChild(SetScreen);
SetScreen = new FitScreen(Box2_mc , "BR");
addChild(SetScreen);
البته تابع کانسترکتور این کلاس پارامتر هارو می گیره ، که فکر کنم بهتره که یک متد واسه این کلاس تعریف کنم و پارامترها رو به اون پاس بدم .
دانلود کنید تا بیشتر بفهمید داستانو ... سوالی بود در خدمتم .
دوستان حرفه ای هم اگه ایده و نظری بدن خیلی عالی میشه .
پیوست ها
آخرین ویرایش: