Buat apl iPhone pertama


Mencipta apl iPhone pertama anda

Sekarang mari buat apl paparan ringkas (apl kosong) yang berjalan pada simulator iOS.

Langkahnya adalah seperti berikut:

1 Buka Xcode dan pilih untuk mencipta projek Xcode baharu.

XcodeWelcomePage

2. Kemudian pilih aplikasi paparan tunggal

CreateProject

3 Seterusnya masukkan nama produk iaitu nama aplikasi, nama organisasi dan pengecam syarikat.

NewProjectCreateOptions

4 Pastikan anda telah memilih Menggunakan pengiraan secara automatik untuk mengeluarkan sumber di luar skop secara automatik. Klik Seterusnya.

5 Pilih direktori projek dan pilih Cipta

CreateProjectSelectFolder

6 Anda akan melihat halaman seperti yang ditunjukkan di bawah

XcodeProjectPage

Anda boleh menetapkan arah, penjanaan dan pelepasan di bahagian atas skrin. Terdapat sasaran penggunaan, peranti menyokong sasaran penggunaan untuk versi 4.3 dan ke atas, ini tidak diperlukan, buat masa ini hanya fokus pada menjalankan aplikasi.

7 Pilih Simulator iPhone dalam menu lungsur dan jalankannya.

runProject

8 Selepas berjaya menjalankan aplikasi pertama, anda akan mendapat output seperti yang ditunjukkan di bawah.

iPhoneSimulator1

Tukar warna latar belakang untuk mempunyai pembina antara muka permulaan. Pilih ViewController.xib. Pilih pilihan latar belakang di sebelah kanan, tukar warna dan jalankan.

InterfaceBuilder1

Dalam projek di atas, sasaran penggunaan telah ditetapkan kepada iOS6.0 secara lalai dan reka letak automatik akan didayakan.

Untuk memastikan aplikasi boleh berjalan dengan betul pada peranti iOS 4.3, kami telah mengubah suai sasaran penggunaan apabila kami mula mencipta aplikasi, tetapi kami tidak melumpuhkan reka letak automatik Untuk membatalkan reka letak automatik, kami perlu menyahpilih kotak semak kelas automatik Setiap satu nib dalam pemapar fail, iaitu fail xib.

Pelbagai bahagian IDE projek Xcode ditunjukkan di bawah (Dokumentasi Pengguna Apple Xcode4)

Xcode4Workspace

Pemeriksa Fail boleh didapati dalam bar Pemilih Pemeriksa yang ditunjukkan di atas, dan Reka Letak Auto boleh dinyahpilih. Apabila anda ingin menyasarkan peranti iOS6.0 sahaja, anda boleh menggunakan Reka Letak Auto.

Sudah tentu, anda juga boleh menggunakan ciri baharu, seperti fungsi buku simpanan semasa menambah pada iOS6. Sekarang, gunakan iOS4.3 sebagai sasaran penggunaan.



Lihat dalam kod apl iOS pertama

5 fail berbeza untuk menjana apl seperti yang ditunjukkan di bawah
  • AppDelegate.h
  • AppDelegate.m
  • ViewController.h
  • ViewController
  • ViewController.m.
  • Kami menggunakan ulasan satu baris (//) untuk menerangkan kod mudah, dan penjelasan kod projek penting berada di bawah kod.

AppDelegate.h

// 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

Perihalan Kod

AppDelegate memanggil UIResponder untuk mengendalikan acara Ios.
  • Lengkapkan arahan aplikasi UIA dan sediakan acara aplikasi utama, seperti permulaan, penamatan, dsb.
  • Gunakan objek UIWindow untuk mengurus dan menyelaraskan pelbagai perspektif pada skrin peranti iOS Ia sama seperti paparan asas paparan pemuatan lain . Biasanya aplikasi hanya mempunyai satu tetingkap.
  • UIViewController untuk mengendalikan aliran skrin
  • AppDelegate.m
// Imports the class Appdelegate's interfaceimport "AppDelegate.h" // Imports the viewcontroller to be loaded#import "ViewController.h" // Class definition starts here@implementation AppDelegate // Following method intimates us 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{    /* Sent when the application is about to move from active to inactive state.
    This can occur for certain types of temporary interruptions
    (such as an incoming phone call or SMS message)
    or when the user quits the application and it begins the transition to the 
    background state. Use this method to pause ongoing tasks, disable timers, 
    and throttle down OpenGL ES frame rates. Games should use this method 
    to pause the game.*/}- (void)applicationDidEnterBackground:(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:. */}@end

Penerangan kod

Takrifan UIApplication di sini. Semua kaedah yang ditakrifkan di atas ialah panggilan UI aplikasi dan tidak mengandungi sebarang kaedah yang ditentukan pengguna.
  • Objek UIWindow diperuntukkan untuk memegang objek peruntukan aplikasi.
  • UIController berfungsi sebagai pengawal pandangan awal tetingkap
  • Panggil makeKeyAndVisible untuk menjadikan tetingkap kelihatan
  • ViewController.h
#import  // Interface for class ViewController@interface ViewController : UIViewController @end

Perihalan kod

Pengurusan ViewControllersController dan model iOS yang asas menyediakan kelas ViewControllersController .
  • ViewController.m
#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

Perihalan Kod

Ditakrifkan dalam kelas asas di mana dua kaedah melaksanakan kelas UIViewController
  • Pemasang dalam viewDidLoad dipanggil selepas paparan awal dimuatkan
  • DidReviving memori dipanggil
  • DidReviving memori