iOS開發-UI 從入門到精通(三)是對 iOS開發-UI 從入門到精通(一)知識點的綜合練習,搭建一個簡單地登陸界面,增強實戰經驗,為以后做開發打下堅實的基礎!
※在這里我們還要強調一下,開發環境和內存管理注意事項(最后一次強調,以后文章中將不會在出現希望大家謹記):
1、前期iOS-UI開發我們需要手動管理內存,所以我們要把ARC關掉(Xcode關掉ARC的步驟);
(1)打開Xcode選中當前工程:
(2)選中Build Settings:
(3)在輸入框內輸入count:
(4)選擇Objective-C Automatic Reference Counting 將其設置為 NO:
(5)AppDelegate.h文件中將:@PRoperty (assign, nonatomic) UIWindow *window;改成@property (retain, nonatomic) UIWindow *window;
(6)AppDelegate.m文件中重寫:- (void)dealloc { [_window release]; [super dealloc]; }
2、在開發當中我們會用到模擬器下面我們來看一下模擬器添加步驟(Xcode環境下);
(1)打開Xcode選擇Window下的Devices:
(2)點擊“+”在彈出來的選擇框里對 Simulator Name 進行選擇:
一、利用所學的知識搭建一個簡單地登陸界面界面呈現“賬號”、“密碼”、“登錄”、“忘記密碼”、“注冊”等:
AppDelegate.h文件中:
1 #import <UIKit/UIKit.h>2 3 @interface AppDelegate : UIResponder <UIapplicationDelegate>4 5 @property (retain, nonatomic) UIWindow *window;6 7 @end
AppDelegate.m文件中:
1 @implementation AppDelegate 2 3 - (void)dealloc 4 { 5 [_window release]; 6 [super dealloc]; 7 } 8 9 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {10 // Override point for customization after application launch.11 #pragma mark--:window窗口12 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];13 14 _window.backgroundColor = [UIColor whiteColor];15 16 #pragma mark--:創建一個view17 UIView * view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];18 19 view.backgroundColor = [UIColor whiteColor];20 21 #pragma mark--:創建兩個UILabel(賬號/密碼)22 UILabel * numLabel = [[UILabel alloc] initWithFrame:CGRectMake(60, 100, 50, 30)];23 24 numLabel.text = @"賬 號:";25 26 UILabel * passLabel = [[UILabel alloc] initWithFrame:CGRectMake(60, 160, 50, 30)];27 28 passLabel.text = @"密 碼:";29 30 #pragma mark--:創建兩個UITextField(賬號輸入框/密碼輸入框)31 UITextField * numTextField = [[UITextField alloc] initWithFrame:CGRectMake(130, 100, 200, 30)];32 33 numTextField.borderStyle = UITextBorderStyleRoundedRect;34 35 numTextField.placeholder = @"請輸入手機號/郵箱";36 37 UITextField * passTextField = [[UITextField alloc] initWithFrame:CGRectMake(130, 160, 200, 30)];38 39 passTextField.borderStyle = UITextBorderStyleRoundedRect;40 41 passTextField.placeholder = @"請輸入密碼";42 43 #pragma mark--:創建三個Button(登錄/忘記密碼/注冊)44 UIButton * loginBtn = [UIButton buttonWithType:UIButtonTypeSystem];45 46 loginBtn.frame = CGRectMake(60, 220, 40, 40);47 48 [loginBtn setTitle:@"登錄" forState:UIControlStateNormal];49 50 UIButton * forgetBtn = [UIButton buttonWithType:UIButtonTypeSystem];51 52 forgetBtn.frame = CGRectMake(160, 220, 60, 40);53 54 [forgetBtn setTitle:@"忘記密碼" forState:UIControlStateNormal];55 56 UIButton * regisBtn = [UIButton buttonWithType:UIButtonTypeSystem];57 58 regisBtn.frame = CGRectMake(280, 220, 40, 40);59 60 [regisBtn setTitle:@"注冊" forState:UIControlStateNormal];61 62 #pragma mark--:添加到視圖上63 [view addSubview:regisBtn];64 65 [view addSubview:forgetBtn];66 67 [view addSubview:loginBtn];68 69 [view addSubview:passTextField];70 71 [view addSubview:numTextField];72 73 [view addSubview:passLabel];74 75 [view addSubview:numLabel];76 77 [_window addSubview:view];78 79 [_window makeKeyAndVisible];80 81 #pragma mark--:釋放82 [passTextField release];83 84 [numTextField release];85 86 [passLabel release];87 88 [numLabel release];89 90 [view release];91 92 [_window release];93 94 return YES;95 }96 97 @end
模擬器運行效果圖:
下一篇將持續更新配套知識點及練習;
Email:dingding3w@126.com
新聞熱點
疑難解答