مشخصات مقاله
-
982
-
0.0
-
2792
-
0
-
0
آموزش Xamarin-آموزش استفاده از منابع آندروید(Android Resources) در Xamarin
آموزش Xamarin-آموزش استفاده از منابع آندروید(Android Resources) در Xamarin
این مقاله مفهوم منابع آندروید(Android resources) را در Xamarin.Android معرفی می کند و نحوه استفاده از آنها را نشان می دهد. این مقاله نحوه استفاده از منابع(resources) در برنامه Android خود را برای پشتیبانی از محلی سازی(localization) برنامه و چندین دستگاه(multiple devices) از جمله اندازه و تراکم صفحه نمایش را پوشش می دهد.
بررسی اجمالی
نرم افزار آندروید به ندرت فقط source code است. اغلب فایلهای دیگری وجود دارد که برنامه را تشکیل می دهند: ویدیو، تصاویر، فونت ها و فایل های صوتی که فقط چند مورد را نام بردیم. به طور خلاصه، این فایلهای "غیر کد منبع(non-source code)" به عنوان " resources" نامگذاری می شوند و در طول فرآیند ساخت کامپایل می شوند (همراه با کد منبع)و به عنوان یک APK برای توزیع و نصب بر روی دستگاه بسته بندی(packaged) می شود:
منابع چندین مزیت را برای یک برنامه Android ارائه می دهند:
- Code-Separation - کد منبع را از تصاویر، strings ها، منوها، انیمیشن ها، رنگ ها و غیره جدا می کند. از آنجا که این منابع می توانند در زمان محلی سازی به طور قابل توجهی کمک کنند.
- Target multiple devices - پشتیبانی ساده تر از تنظیمات دستگاه را بدون تغییر کد فراهم می کند.
- Compile-time Checking - منابع استاتیک هستند و در نرم افزار کامپایل شده اند. این مسئله اجازه می دهد تا استفاده از "منابع" در زمان کامپایل بررسی شود، زمانی که اشتباه گرفتن و تصحیح آسان خواهد بود.و به عنوان run-time زمانی که برای قرار دادن دشوار است و هزینه برای اصلاح زیاد است.
هنگامی که یک پروژه Xamarin.Android جدید آغاز می شود، یک پوشه خاص به نام Resources به همراه برخی از زیر شاخه ها ایجاد می شود:
در تصویر بالا، منابع برنامه بر اساس نوع آنها به این زیر شاخه ها سازماندهی می شوند: تصاویر در پوشه "drawable" وارد می شوند؛ views ها در زیر شاخه "layout" قرار می گیرند و غیره .
دو راه برای دسترسی به این منابع در یک برنامه "Xamarin.Android" وجود دارد:برنامه نویسی به صورت کد و تعریف در XML با استفاده از یک سینتکس XML خاص.
این " resources" به عنوان Default Resources نامیده می شوند و توسط همه دستگاه ها مورد استفاده قرار می گیرند مگر اینکه خاصیت خاصی مشخص شود. علاوه بر این، هر نوع " resources" ممکن است به صورت اختیاری دارای "منابع جایگزین(Alternate Resources)" باشد که آندروید می تواند برای هدف قرار دادن دستگاه های خاص استفاده کند. به عنوان مثال، ممکن است منابع برای هدف قرار دادن کاربر محلی، اندازه صفحه نمایش، یا اگر دستگاه 90 درجه از حالت عمودی به حالت landscape و چرخانده شود، و غیره ارائه شود. در هر یک از این موارد ، آندرویید بدون هیچ گونه تلاش برنامه نویسی توسط توسعه دهنده منابع را برای استفاده توسط برنامه بارگذاری می کند.
منابع جایگزین با اضافه کردن یک رشته کوتاه، به نام تعریف کننده، به انتهای دایرکتوری که دارای یک نوع داده خاص است، مشخص می شوند.
به عنوان مثال، "resources / drawable-de" تصاویری را برای دستگاه هایی که به یک زبان "آلمانی" تنظیم شده اند مشخص می کنند، در حالی که "resources / drawable-fr" تصاویر را برای دستگاه هایی که به یک زبان فرانسه تعلق دارند، نگه می دارد. یک مثال از ارائه منابع جایگزین را می توان در تصویر زیر مشاهده کرد که در آن همان برنامه فقط با تغییر مکان دستگاه تغییر می کند:
این مقاله نگاهی جامع در مورد استفاده از منابع و موارد زیر را پوشش می دهد:
- • مبانی منابع آندرویید(Android Resource Basics)- استفاده از منابع پیش فرض برنامه نویسی(programmatically) و اعلام(declaratively)، اضافه کردن انواع منابع مانند تصاویر و فونت به یک برنامه.
- • تنظیمات خاص دستگاه(Device Specific Configurations) - پشتیبانی از screen resolutions و تراکم های مختلف در یک برنامه.
- • محلی سازی(Localization) - با استفاده از منابع برای حمایت از مناطق مختلف در یک برنامه ممکن است مورد استفاده قرار گیرد.