شروع دوره پایتون از پنجشنبه 1 خرداد ، مقدماتی تا پیشرفته، بدون پیش نیاز شروع دوره پایتون از پنجشنبه 1 خرداد ، مقدماتی تا پیشرفته، بدون پیش نیاز
🎯 ثبت نام

ساخت یک پروژه Xamarin Forms

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

ساخت یک پروژه Xamarin Forms

برنا مه ای که شما خواهید ساخت یک Xamarin Forms خواهد بود که بر اساس پروژهPortable Class Library خواهد بود.

·         استفاده از Xamarain Studio در Mac

مانند تصویر زیر  برنامه Xamarin Studio را باز کنید.

استفاده از Xamarain Studio در Mac

سپس یک app خالی (Xamarin Forms Portable) ایجاد کنید:

Xamarin Forms Portable

نتیجه مانند تصویر زیر خواهد بود:

Xamarin Forms Portable

ENEI.SessionApp بوسیله سه پروژه زیر تعریف می شود:

·         ENEI.SessionsApp: پروژه Portable Class Library، شامل کدهای مشترک بین اهداف است. این پروژه مستقل از platform است.

·         ENEI.SessionsApp.Droid: که پروژه Xamarin Android است و برنامه Android  یا همان Android API را تعریف میکند.

·         ENEI.SessionsApp.iOS: پروژه Xamarin iOS که برنامه iOS یا همان iOS API را تعریف می کند.



حالا باید Nuget Packageهای موجود در پروژه را بروزرسانی کنید. همانطور که در تصویر می بینید فقط باید Xamarin Forms Nuget Package را بروزرسانی کنید.

Xamarin Forms Nuget Package

 

Xamarin Forms Nuget Package

برای بروزرسانی این package باید بر روی context menu راست کلیک کرده و بر روی Update کلیک کنید.

Xamarin Forms Nuget Package

 

نتیجه به صورت زیر خواهد بود:



Xamarin Forms Nuget Package

برای سایر پروژه ها نیز در صورت نیاز، باید همین مراحل را انجام دهید.

قبل از اجرای برنامه، solution مورد نظر را انتخاب و تنظیمات زیر را برای آن انجام دهید:

Xamarin Forms Nuget Package

حالا می توانید برنامه  ENEI Session 1010 خود را ایجاد کنید.

1.     استفاده از Xamarin Studio در Windows

مانند تصویر زیر Xamarin Studio را اجرا کنید:


Xamarin Studio

سپس یک app خالی (Xamarin Forms Portable) ایجاد کنید:

Xamarin Forms Portable

نتیجه مانند تصویر زیر خواهد بود:


Xamarin Forms Portable

ENEI.SessionApp بوسیله دو پروژه زیر تعریف می شود:

·         ENEI.SessionsApp: پروژه Portable Class Library، شامل کدهای مشترک بین اهداف است. این پروژه مستقل از platform است.

·         ENEI.SessionsApp.Droid: که پروژه Xamarin Android است و برنامه Android  یا همان Android API را تعریف میکند.

·         ENEI.SessionsApp.iOS: پروژه Xamarin iOS که برنامه iOS یا همان iOS API را تعریف می کند.

حالا باید Nuget Packageهای موجود در پروژه را بروزرسانی کنید. همانطور که در تصویر می بینید فقط باید Xamarin Forms Nuget Package و Xamarin.Android.Support.v4 Nuget package را بروزرسانی کنید.

Xamarin Forms Nuget Package

برای بروزرسانی این Packageها، باید با راست کلیک، context menu را باز کرده و بر روی Update کلیک کنید:

Xamarin Forms Nuget Package

نتیجه مانند تصویر زیر خواهد بود:

Xamarin Forms Nuget Package

 

در صورت نیاز این مراحل را برای سایر پروژه ها نیز انجام دهید.

·         استفاده از Visual Studio در Windows

Visual Studio را باز کنید.

Visual Studio

سپس یک app خالی (Xamarin Forms Portable) ایجاد کنید:

Xamarin Forms Portable

نتیجه مانند تصویر زیر خواهد بود:

Xamarin Forms Portable


ENEI.SessionApp
بوسیله چهار پروژه زیر تعریف می شود:

·         ENEI.SessionsApp: پروژه Portable Class Library، شامل کدهای مشترک بین اهداف است. این پروژه مستقل از platform است.

·         ENEI.SessionsApp.Droid: که پروژه Xamarin Android است و برنامه Android  یا همان Android API را تعریف میکند.

·         ENEI.SessionsApp.iOS: پروژه Xamarin iOS که برنامه iOS یا همان iOS API را تعریف می کند.

·         ENEI.SessionsApp.WinPhone: پروژه Windows Phone که یک برنامه Windows Phone یا همان Windows Phone API را تعریف می کند.

حالا باید Nuget Packageهای موجود در پروژه را بروزرسانی کنید. همانطور که در تصویر می بینید فقط باید Xamarin Forms Nuget Package را بروزرسانی کنید.




Xamarin Forms Nuget Package

Xamarin Forms Nuget Package

نتیجه به صورت زیر خواهد بود:

Xamarin Forms Nuget Package

در صورت نیاز این مراحل را برای پروژه های دیگر نیز انجام دهید.

قبل از اجرای برنامه، باید solution را انتخاب کنید و برنامه هایی که باید ساخته و deploy شوند را تعیین میکنیم.

اجرای برنامه

سناریو های مختلفی برای استفاده از پلتفرم های مختلف وجود خواهد داشت:

·         استفاده از Xamarin Studio در Mac: Appهای Android + iOS

·         استفاده از Xamarin Studio در Windows: Appهای Android

·         استفاده از Visual Studio بدون پلاگین Xamarin: Appهای Windows

·         استفاده از Visual Studio با پلاگین Xamarin: Appهای Windows، Android و iOS.

در گزینه آخر، برای Mac به یک Xamarin Build Host برای اتصال به Visual Studio نیاز  خواهد بود.

همانطور که در تصویر زیر می بینید، می توانید اجرای برنامه های Android، iOS و Windows Phone به صورت همزمان مشاهده کنید. برنامه Android در Xamarin Android Player، برنامه iOS در iPhone Simulator و برنامه Windows Phone در دستگاه Lumia 1020 (که به یک سیستم ویندوز موازی با Mac متصل شده است) اجرا می شوند.


 اجرای برنامه های Android، iOS و Windows Phone به صورت همزمان

مقداردهی اولیه در  Xamarin Forms

هر برنامه نویس ای باید بداند چطور یک برنامه Xamarin Forms تعریف میشود. بدین ترتیب باید بداند:

در برنامه ENEI.SessionsApp.iOS، بویژه در AppDelegate.cs کدهای زیر را خواهیم داشت:

public override bool FinishedLaunching(UIApplication app, NSDictionary options)

        {

            global::Xamarin.Forms.Forms.Init();

            LoadApplication(new App());

            return base.FinishedLaunching(app, options);

        }

وظیفه این بخش مقداردهی اولیه و تعیین کلاس آغازگر برنامه Xamarin Forms است و صفحه اصلی ایجاد شده با Xamarin Forms API را تعیین میکند.

ENEI.Sessions.Android نیز به همین ترتیب  است، خصوصاً در MainActivity.cs:

protected override void OnCreate(Bundle bundle)

        {

            base.OnCreate(bundle);

            global::Xamarin.Forms.Forms.Init(this, bundle);

            LoadApplication(new App());

        }

و در برنامه ENEI.Sessions.WinPhone، بویژه در MainPage.xaml.cs:

public MainPage()  

            {  

               InitializeComponent();  

               SupportedOrientations = SupportedPageOrientation.PortraitOrLandscape;  

               global::Xamarin.Forms.Forms.Init();  

               LoadApplication(new ENEI.SessionsApp.App());  

            }

App.cs در ENEI.SessionsApp (Portable Class Library) به شکل زیر تعریف می شود:

        public class App : Application

        {

            public App()

            {

                // The root page of your application    

                MainPage = new ContentPage

                {

                    Content = new StackLayout

                    {

                        VerticalOptions = LayoutOptions.Center,

                        Children = {  

                    new Label {  

                        XAlign = TextAlignment.Center,  

                        Text = "Welcome to Xamarin Forms!"  

                    }  

                }

                    }

                };

            }

        } 

همانطور که قبلاً گفته شد، ENEI.SessionsApp پروژه  ای است که کدها را بین اهداف مختلف به اشتراک می گذارد و مستقل از پلتفرم است. در این پروژه باید Model، Viewها، منبع داده وسایر کلاس های مفید، که بین پلتفرم های مختلف مکرراً  استفاده می شوند، تعریف می شوند.

 

 

1394/10/02 3607 1209
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...