آموزش نصب زامارین در ویژوال استودیو ۲۰۱۷

زامارین در این سالها پیشرفت های زیادی کرده است. یکی از مسائلی که قبلا چالش زیادی محسوب میشد شیوه نصب و پیکربندی زامارین بود. تداخلات زیادی در مسائل مختلف بوجود می آمد تا جایی که گاها بعضی دوستان بیخیال زامارین می شدند 🙂

خبر خوب اینه که نصب زامارین از نگارش ویژوال استودیو ۲۰۱۷ به بعد تقریبا! هیچ نکته ی خاصی نداره. فقط کافیه نصبش کنید. به همین راحتی. باور ندارید ادامه مطلب رو بخونید!

همین اول بگم که نیازی به دانلود بسته کامل ویژوال استودیو ندارید. بسته کامل نزدیک ۴۰ گیگابایت می شود که بیشتر اون مربوط به c++ و SDK ویندوز هست. در حالی که معمولا ما فقط نیاز به ابزارهای توسعه زامارین و ابزارهای توسعه وب و دسکتاپ داریم. حجم این ابزارها به طور کل کمتر از ۵ گیگابایت می شود که بنظر من منطقی نیست برای ۵ گیگ حدود ۴۰ گیگ دانلود کنیم. 

خب، راه حل چیه؟! معلومه. نصب آنلاین ویژوال استودیو ۲۰۱۷

 تجربه و نظر من اینه که نصب آنلاین ویژوال استودیو ۲۰۱۷ بسیار راحت تر و به صرفه تر از دانلود بسته کامل و نصب آفلاین هست…

خب اگر با من موافق هستید بریم سر اصل مطلب. اگر هم موافق نیستید برید مستقیم مرحله ۲ 🙂

مرحله ۱- ابتدا وارد سایت مایکروسافت می شویم و فایل نصب آنلاین ویژوال استودیو ۲۰۱۷ را دانلود میکنیم. اینجا

مرحله ۲ – فایل نصب رو اجرا میکنیم و منتظر می مونیم تا برسه به مرحله ابتدای انتخاب بسته های مورد نظر برای نصب. همانطور که از عناوین مشخص هست به خیلی از این بسته ها معمولا ما نیازی نداریم. بسته های زیر مورد استفاده عموم برنامه نویسان هست که باید آنها را تیک بزنیم.

  • .NET Desktop Develpment  توسعه برنامه های دسکتاپ ویندوز

  • برنامه های تحت وب با ASP.NET جدید و قدیم. ASP.NET and Web Development و .Net Core Cross-Platform Development
  • توسعه برنامه های موبایل با زامارین Mobile Development With .Net
  • اگر قصد توسعه برنامه های یونیورسال چه به صورت مستقل و چه با استفاده از زامارین فرم را دارید گزینه universal windows platform development را تیک بزنید.

در تصاویر زیر این گزینه ها مشخص شده اند.

اگر از گیت هاب استفاده می کنید این دو تا را تیک بزنید.

حجم موارد بالا برای دانلود حدودا ۵ گیگابایت می شود.  نیازی به تیک زدن هیچ گزینه اضافه ی دیگری نیست. در مقابل این وسوسه مقاومت کنید 🙂

نکته ای که باید مدنظر داشته باشید بعضی بسته های خاص مثل Android SDK را حین نصب مستقیما از سرور گوگل دریافت میکند و گوگل به دلیل اینکه ما سالهاست در دنیا آدم می کشیم و از جمله در ژاپن ۸۰ هزار‌ آدم را با بمب اتم یکجا پودر کردیم و در ویتنام هزاران آدم را کشتیم و اخیرا در همین افغانستان و عراق حمله کردیم و کلی آدم کشتیم و غیره ، ما را تحریم حقوق بشری کرده است و خدمات نمی دهد.

بنابراین در هنگام نصب باید از IP خارج از ایران استفاده کنید. خوشبختانه نیازی به قندشکن نیست. بهتره از سرویس شکن استفاده کنید.

سپس دکمه install را محکم بفشارید 🙂

مرحله ۳- در این مرحله شما هیچ کاری ندارید. ویژوال استودیو را باز کنید و لذت ببرید. ویژوال استودید به همراه سازوکار شبیه ساز اندروید توکار ارائه می شود. بنابراین نیازی به نصب سایر شبیه سازها مثل جنی موشن هم ندارید. این مساله مهم است چرا که اگر از ابزارهایی مثل داکر برای توسعه استفاده میکنید ، مشکل تداخل مجازی سازها هم حل می شود. 

هوووووووورااااا

از این راحت تر دیگه نداریم واقعا! سوالی داشتید اگر توی گروه تلگرام مطرح کنید سریع تر جواب می گیرید. لینکش کنار سایت موجود هست. از لینک کانال هم غافل نشوید. 

کنترل FlexLayout در زامارین فرم

در نگارش های اخیر زامارین فرم کنترل FlexLayout معرفی شده است که بسیار انعطاف پذیر می باشد. این کنترل همانند سایر کنترل های از css پشتیبانی میکند و بسیار قدرتمند می باشد.

کنترل FlexLayout از جهاتی شبیه StackLayout می باشد که می توانست کنترل های فرزندش را به طور افقی یا عمودی به صورت پشت سر هم بچیند. اما FlexLayout قابلیت های بیشتری دارد. مثلا اگر تعداد کنترل های فرزند خیلی زیاد بود و بیشتر از یک ردیف یا ستون بود می تواند منعطف باشد. کنترل FlexLayout کلی تنظیمات برای Orientation و Alignment دارد. همچنین می تواند به سایز صفحه واکنش نشان دهد و متناسب با آن بهینه شود.

مثال ساده ای از کنترل را در زیر می بینید:

آموزش فارسی FlexLayout
آموزش فارسی FlexLayout

کد تصویر بالا به صورت زیر می باشد:

آموزش زامارین فارسی

خاصیت Direction جهت چیدمان را مشخص می کند. ۴ حالت دارد که عبارتند از Column, ColumnReverse, Row, RowReverse.

Reverse کنترل های فرزند را از آخر به اول چیدمان میکند و بسته به افقی یا عمودی بودن فرق میکند. خاصیت Direction  به صورت پیش فرض روی Row تنظیم شده است.

خاصیت AlignItems کار تراز کردن را انجام می دهد. مزیت این خاصیت در مقابل خاصیت معادل آن در Stacklayout یعنی HorizontalOptions این هست که بر همه فرزندان اعمال می شود. این یعنی کد تمیزتر و کمتر. و مدیریت راحت تر.

با توجه به اینکه خاصیت AlignItems به همه ی فرزندان اعمال می شود اگر بخواهیم کنترل فرزندی را از این امر مستثنا کنیم باید از خاصیت FlexLayout.AlignSelf برای آن کنترل استفاده کنید.

 

کنترل قابلیت های بسیاری دارد. نمونه های از کاربردهای آن را در تصاویر زیر می بینید.

ساخت کاتالوگ با قابلیت اسکرول افقی در زامارین فرم

 

ساخت گالری تصاویر منعطف در زامارین فرم

ملزومات کاربردی زامارین یا Xamarin.Essentials

معمولا در هر پروژه نیازمندی های عمومی وجود دارد که به طور ثابت به انها نیازمندیم. مثلا در اکثر پروژه ها نیاز داریم که وضعیت اینترنت و اتصالات را چک کنیم و اگر اینترنت برقرار بود، درخواست خودمان را به وب سرویس ارسال کنیم. یا مثلا ویبره را فراخوانی کنیم یا وضعیت جغرافیایی کاربر را بدست بیاوریم.

این نیازها قبلا به صورت پروژه هایی پراکنده توسط برنامه نویسان در گیتاب گذاشته شده بود. اخیرا شرکت زامارین این کدها را به صورت مجموعه ای منظم درست کرده و تحت عنوان Xamarin Essentials منتشر کرده است. این مجموعه فعلا شامل بیش از ۲۰ api کاربردی هست و در حال تکمیل شدن می باشد.

استفاده از این کتابخانه بسیار راحت است. مثلا برای چک کردن اتصال اینترنت بعد از اضافه کردن کتابخانه و دادن مجوزهای لازم کافی است کد زیر را بنویسید:

var current = Connectivity.NetworkAccess;

if (current == NetworkAccess.Internet) {

     // Connection to internet is available

}

شما به راحتی میتونید با اضافه کردن از طریق nuget از اونها استفاده کنید.

https://www.nuget.org/packages/Xamarin.Essentials

لینک مستندات:

https://docs.microsoft.com/en-us/xamarin/essentials

آموزش زامارین – ساختار یک برنامه اندروید

در این فایل ویدئویی راجع به ساختار یک برنامه اندروید صحبت میکنیم. ساختار یک برنامه اندروید به طور کل از activity ها و view ها تشکیل شده است. برای طراحی ui فایل های layout رو داریم که در پوشه مخصوص ریخته می شود. در این ویدئو شما با کلیت ساختار آشنا می شوید.

برای خرید پکیج کامل آموزش زامارین از فروشگاه سایت بازدید نمایید.

 

 

طراحی برنامه های راست به چپ در زامارین فرم

برای اینکه بخواهیم برنامه های طراحی شده توسط زامارین فرم به صورت پیش فرض از راست به چپ رندر شوند، روال زیر باید انجام شود.

** توجه: این مقاله فعلا در مرحله نهایی نیست و ممکن است در آینده جزئیاتی به آن افزوده یا کم شود.

 

زامارین اندروید:

– در اندروید ابتدا باید پشتیبانی از راست به چپ را فعال کرد. بدین منظور در فایل مانیفست خصوصیت  android:supportsRtl=”true”  را در تگ application تنظیم کنید.

نتیجه نمونه:

<application android:label=”xamarinpersian.Android” android:supportsRtl=”true” android:icon=”@drawable/icon”></application>

– سپس در تنظیمات پروژه min sdk را به ۱۸ تنظیم میکنیم. یعنی اندروید ۴٫۳

– در نهایت در ابتدای فایل MainActivity قبل از loadApplication کد زیر را وارد میکنیم.

if (Build.VERSION.SdkInt >= Build.VERSION_CODES.JellyBeanMr1)
{
this.Window.DecorView.LayoutDirection = LayoutDirection.Rtl;
}

زامارین آیفون: 

در زامارین ios فایل info.plist  را باز کنید و مقدار زیر را به لیست اضافه کنید.

<key>CFBundleDevelopmentRegion</key>
<string>fa</string>

زامارین UWP و زامارین WinPhone

در کلاس mainPage قابل از loadApplication کد زیر را وارد نمایید

this.FlowDirection = FlowDirection.RightToLeft;

 

 

آموزش فارسی زامارین اندروید – ساختار برنامه اندروید

در این فایل ویدئویی راجع به ساختار یک برنامه اندروید صحبت میکنیم.
ساختار یک برنامه اندروید به طور کل از activity ها و view ها تشکیل شده است. برای طراحی ui فایل های layout رو داریم که در پوشه مخصوص ریخته می شود.
در این ویدئو شما با کلیت ساختار آشنا می شوید.
برای خرید پکیج کامل از فروشگاه سایت بازدید نمایید.