در قسمتهای قبل یاد گرفتید که چطور View و View Model را در متد RegisterTypes در App.xaml.cs به یکدیگر وصل کرده و به آنها یک اسم دهید و با Navigation Service آنها را در حالتهای مختلف مثل Navigation Page و Master Detail و Popup و ... باز کنید و بین صفحات جابجا شوید. در Viewها دو مورد را به صورت ابتدایی توضیح دادیم، Binding و Command . در این قسمت وارد جزئیات میشویم. Command قطعهای کد در View Model است (عموما یک متد ...
BitDatePicker یک Date Picker، برای استفاده در برنامههایی مبتنی بر زمارین فرم (Android - iOS - UWP) است. مهمترین ویژگی ها: پشتیبانی از تمامی Calendar System هایی که noda time ساپورت میکند؛ اعم از شمسی، قمری، میلادی و ... پشتیبانی از تمامی Locale هایی که NET. پشتیبانی میکند؛ اعم از فارسی، عربی، انگلیسی و ... قابلیت ارائه Template سفارشی شده برای UI سازگار شده با MVVM بر روی گیت هاب یک نمونه کد که در آن ...
تا اینجا میدانیم که View که با Xaml نوشته میشود؛ مسئولیت ظاهر صفحات را به عهده داشته و View Model که با CSharp نوشته میشود نیز منطق هر صفحه را مدیریت میکند. حال اگر بخواهیم در مثال Login، در صورتی که UserName و یا Password خالی بودند، به کاربر هشدار دهیم چه؟ برای این کار شما میتوانید با توجه به دسترسی کد CSharp به صد در صد امکانات هر سیستم عامل، مثلا در Android از MakeToast استفاده کنید، ولی این کار باعث میشود مجبور شوید برای Andr ...
در قسمت ششم ، یک صفحه ساده برای لاگین نوشتیم که عملا کار خاصی نمیکرد. حال میخواهیم در این قسمت روی UI آن کمی کار کنیم. دقت کنید که هدف این قسمت، آموزش زیبا سازی صفحات نیست؛ بلکه هدف، آشنایی شما با تنظیمات مهم UI است. صفحه Login ای که در قسمت قبل نوشته شد، خود یک Content Page است و دارای یک Stack Layout با چینش عمودی است. داخل آن دو Entry برای گرفتن نام و نام کاربری وجود دارد و یک Button. مشکلی که صفحه لاگین دارد این است که اگر در ...
در پنج قسمت گذشته به نحوه نصب و راه اندازی Xamarin برای توسعه هر سه پلتفرم Android / iOS / Windows پرداختیم. حال با داشتن محیطی آماده برای کد زدن و تست، میتوانیم به آموزش کد نویسی بپردازیم. ابتدا بد نیست نگاهی به ساختار XamApp بیاندازیم. این پروژهی مثال، خود از چهار قسمت تشکیل شدهاست: XamApp | XamApp.Android | XamApp.UWP | XamApp.iOS در خود XamApp درصد زیادی (گاهی تا 95%) از کد پروژه پیاده سازی میشود که بین سه پلتفرم مشترک است و ...
همانطور که در قسمتهای قبلی گفتیم، کد UI و Logic پروژه مابین Android-iOS-Windows مشترک بوده و از یک کد، سه بار استفاده مجدد میشود. تا این جا نیز میدانید که چطور کد را روی ویندوز و Android تست کرده و پابلیش بگیرید. این قسمت، نوبت به iOS میرسد. برای دیباگ و تست پروژهها بر روی iOS چه بر روی Simulator و چه بر روی Device، نیاز به وجود یک Mac در شبکه است. حال این میتواند یک Mac Book Pro فیزیکی باشد یا یک Virtual Mac روی VM Ware. ابتدا به ...
تا قسمت سوم توانستیم Xamarin را نصب و پروژهی اولیه آن را بیلد کنیم. سپس کد مشترک بین سه پلتفرم را بر روی Windows اجرا و Edit & continue آن را هم تست کردیم که هم برای UI ای که با Xaml نوشته میشود و هم برای منطقی که با CSharp نوشته میشود، کار میکند. همانطور که گفتیم، کد UI و Logic برای هر سه پلتفرم مشترک است؛ منتهی به علت امکانات دیباگ فوق العاده و سرعت بیشتر ویندوز، ابتدا آن را بر روی ویندوز تست کردیم و بعد برای تکمیل UI، آن را ...
در قسمت قبل ، محیط توسعه نرم افزار مد نظرمان را ایجاد کردیم و توانستیم پروژه پیش فرض Xamarin forms را بیلد کنیم. حالا قصد داریم تا یک مثال ساده را با هم بررسی کنیم و آن را بر روی ویندوز تست کنیم. در قسمت بعدی نیز همین مثال ساده را بر روی Android و در قسمت بعدتر نیز بر روی iOS تست میکنیم. پس از اطمینان از اینکه امکان تست برنامه را بر روی هر سه پلتفرم یافتهاید، بر روی آموزش موارد بیشتری از Xamarin Forms تمرکز میکنیم. برای شروع، Xaml L ...
در قسمت اول در مورد ابزار انتخابی برای توسعه برنامههای Cross Platform صحبت کردیم. در این قسمت به آموزش نصب و راه اندازی محیط توسعه میپردازیم. شما میتوانید در هر یک از سیستم عاملهای Mac - Windows - Linux و با هر یک از IDEهای Visual Studio - Visual Studio for mac - Rider کار کنید. برای این که بتوانیم آموزش را کاملا عملی پیش ببریم و وارد جزئیات شویم، در عمل باید یکی را انتخاب و آموزش دهیم و آن Windows - Visual Studio است؛ اگرچ ...
یکی از دغدغههای جدی امروزه توسعه دهندگان نرم افزار در سمت Front end، توسعه برنامههای Cross Platform است. در این سری آموزشی به صورت قدم به قدم و پروژه محور میخواهیم برنامهای را برای Android/iOS/Windows توسعه دهیم که روی کامپیوتر، تبلت و موبایل به خوبی کار کند. انتخاب ابزار درست برای شروع به کار از اهمیت شایانی برخوردار است و بد نیست در ابتدا به بررسی دلایل انتخاب ابزارهایی بپردازیم که قرار است در این دوره از آنها استفاده شود. ...