آموزش ایجاد برنامه آیفون در برنامه نویسی iOS
آموزش ایجاد برنامه آیفون در برنامه نویسی iOS
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش ایجاد برنامه آیفون در برنامه نویسی iOS خواهیم پرداخت.
اکنون ما قصد داریم یک برنامه تک نمای ساده (یک برنامه خالی) ایجاد کنیم که روی شبیه ساز iOS اجرا شود.
مراحل به شرح زیر است.
مرحله 1 – Xcode را باز کرده و ایجاد یک پروژه Xcode جدید را انتخاب کنید.
مرحله 2 – برنامه Single View را انتخاب کنید.
مرحله 3 – نام محصول، یعنی نام برنامه، نام سازمان و سپس شناسه شرکت را وارد کنید.
مرحله 4 – اطمینان حاصل کنید که Use Automatic Reference Counting به منظور آزادسازی خودکار منابع تخصیص یافته پس از خارج شدن از محدوده باشد. روی Next کلیک کنید.
مرحله 5 – فهرست مورد نظر برای پروژه را انتخاب کرده و ایجاد را انتخاب کنید.
مرحله 6 – صفحه ای را به صورت زیر مشاهده خواهید کرد –
در صفحه بالا ، قادر خواهید بود جهت گیریهای پشتیبانی شده، تنظیمات ساخت و انتشار را انتخاب کنید. یک هدف استقرار زمینه وجود دارد ، نسخه دستگاهی که می خواهیم از آن پشتیبانی کنیم، اجازه می دهد 4.3 را انتخاب کنید، که حداقل هدف استقرار مجاز در حال حاضر است. در حال حاضر، این موارد لازم نیست و بیایید بر روی اجرای برنامه تمرکز کنیم.
مرحله 7 – اکنون شبیه ساز آیفون را در منوی کشویی نزدیک دکمه Run انتخاب کرده و گزینه run را انتخاب کنید.
مرحله 8 – شما اولین برنامه خود را با موفقیت اجرا کرده اید. و به صورت زیر خروجی خواهید گرفت
حالا بیایید رنگ زمینه را تغییر دهیم، فقط برای شروع با رابط ساز. ViewController.xib را انتخاب کنید. گزینه پس زمینه را در سمت راست انتخاب کنید، رنگ را تغییر دهید و اجرا کنید.
در پروژه فوق، به طور پیش فرض، هدف استقرار روی iOS 6.0 تنظیم شده و طرح بندی خودکار فعال خواهد شد. برای اطمینان از اجرای برنامه ما در دستگاههایی که در iOS 4.3 به بعد هستند، ما در آغاز ایجاد این برنامه هدف استقرار را تغییر داده ایم، اما طرح خودکار را غیرفعال نکرده ایم.
برای غیرفعال کردن طرح بندی خودکار، باید کادر انتخاب خودکار را در inspector فایل nib، یعنی فایل های xib ، لغو انتخاب کنیم. بخشهای مختلف IDE پروژه Xcode در شکل زیر آورده شده است (حسن نیت ارائه می دهد: مستندات کاربر Apple Xcode 4).
همانطور که در بالا نشان داده شده است، inspector فایل در نوار انتخاب کننده یافت می شود و می توان از آنجا طرح خودکار را برداشت. وقتی می خواهید فقط دستگاههای iOS 6 را هدف قرار دهید می توان از طرح خودکار استفاده کرد. همچنین اگر هدف استقرار را به iOS 6 افزایش دهید، می توانید از بسیاری از ویژگی های جدید مانند passbook استفاده کنید. در حال حاضر ، بیایید به iOS 4.3 به عنوان هدف استقرار پایبند باشیم.
کد اولین برنامه iOS
پنج فایل مختلف را پیدا خواهید کرد که برای برنامه شما ایجاد شده اند. آنها به شرح زیر ذکر شده اند –
- AppDelegate.h
- AppDelegate.m
- ViewController.h
- ViewController.m
- ViewController.xib
AppDelegate.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// Header File that provides all UI related items. #import <UIKit/UIKit.h> // Forward declaration (Used when class will be defined /imported in future) @class ViewController; // Interface for Appdelegate @interface AppDelegate : UIResponder <UIApplicationDelegate> // Property window @property (strong, nonatomic) UIWindow *window; // Property Viewcontroller @property (strong, nonatomic) ViewController *viewController; //this marks end of interface @end |
موارد مهم در کد به شرح ذیل است –
- AppDelegate از UIResponder که رویدادهای iOS را مدیریت می کند به ارث می برد.
- روش های نمایندگی UIApplicationDelegate را اجرا می کند، که رویدادهای اصلی برنامه مانند راه اندازی کامل، خاتمه یافتن و غیره را فراهم می کند.
- شی UIWindow برای مدیریت و هماهنگی نماهای مختلف در صفحه دستگاه iOS. مانند نمای پایه ای است که تمام نماهای دیگر بر روی آن بارگیری می شوند. به طور کلی فقط یک پنجره برای یک برنامه وجود دارد.
- UIViewController برای کنترل جریان صفحه.
AppDelegate.m
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
// Imports the class Appdelegate's interface import "AppDelegate.h" // Imports the viewcontroller to be loaded #import "ViewController.h" // Class definition starts here @implementation AppDelegate // Method to intimate us that the application launched successfully - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for customization after application launch. self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil]; self.window.rootViewController = self.viewController; [self.window makeKeyAndVisible]; return YES; } - (void)applicationWillResignActive:(UIApplication *)application { /* Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.*/ } - (void)applicationWillEnterForeground:(UIApplication *)application { /* Called as part of the transition from the background to the inactive state. Here you can undo many of the changes made on entering the background.*/ } - (void)applicationDidBecomeActive:(UIApplication *)application { /* Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.*/ } - (void)applicationWillTerminate:(UIApplication *)application { /* Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. */ } - (void)applicationWillTerminate:(UIApplication *)application { /* Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. */ } @end |
موارد مهم در کد به شرح ذیل است –
- نمایندگان برنامه UIA در اینجا تعریف شده اند. تمام روشهای تعریف شده در بالا نمایندگان برنامه UI هستند و هیچ روش تعریف شده توسط کاربر را ندارند.
- شی UIWindow برای نگهداری برنامه اختصاص یافته اختصاص داده شده است.
- UIViewController به عنوان کنترل کننده نمایش اولیه پنجره اختصاص داده می شود.
- برای اینکه پنجره قابل مشاهده باشد، روش makeKeyAndVisible فراخوانی می شود.
ViewController.h
1 2 3 4 5 6 |
#import <UIKit/UIKit.h> // Interface for class ViewController @interface ViewController : UIViewController @end |
موارد مهم در کد به شرح ذیل است –
- کلاس ViewController UIViewController را به ارث می برد، که مدل مدیریت view اصلی را برای برنامه های iOS فراهم می کند.
ViewController.m
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#import "ViewController.h" // Category, an extension of ViewController class @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end |
موارد مهم در کد به شرح ذیل است –
- دو روش پیاده سازی شده در اینجا در کلاس پایه UIViewController تعریف شده است.
- تنظیمات اولیه را در viewDidLoad انجام دهید که پس از بارگیری نمایش فراخوانی می شود.
- در صورت هشدار حافظه، روش didReceiveMemoryWarning فراخوانی می شود.
دیدگاه شما