iPhone教程 對(duì)話框與輸入框按鈕響應(yīng)界面
iPhone教程 對(duì)話框與輸入框按鈕響應(yīng)界面是本文要介紹的內(nèi)容,主要來介紹一下iphone中UIButton 與UITextField簡單的界面彈出對(duì)話框以及按鈕的響應(yīng) 。項(xiàng)目需求:實(shí)現(xiàn)兩個(gè)按鈕 ,兩個(gè)文本框點(diǎn)擊按鈕在文本輸入框中顯示從那個(gè)按鈕中點(diǎn)進(jìn)去的信息。如圖:
聲明類
- //
- // testViewController.h
- // test
- //
- // Created by 宣雨松 on 11-7-5.
- // Copyright 2011年 __MyCompanyName__. All rights reserved.
- //
- #import <UIKit/UIKit.h>
- // 在ViewController中實(shí)現(xiàn)UIAlertViewDelegate接口 用來監(jiān)聽彈出框 確定與取消
- @interface testViewController : UIViewController <UIAlertViewDelegate>
- {
- //定義了一個(gè)按鈕buttonA
- IBOutlet UIButton *buttonA;
- //定義了一個(gè)文本框A
- IBOutlet UITextField *textFieldA;
- //定義了一個(gè)按鈕buttonB
- IBOutlet UIButton *buttonB;
- //定義了一個(gè)文本框B
- IBOutlet UITextField *textFieldB;
- }
- //聲明A按鈕被按下的一個(gè)方法(IBAction) 相當(dāng)于(void)
- -(IBAction)bttonAPressed:(id)text;
- //聲明B按鈕被按下的一個(gè)方法
- -(IBAction)bttonBPressed:(id)text;
- //注意這兩個(gè)方法是用來綁定在空間上 稍后我給大家介紹如何綁定
- @end
接下來我介紹一下控件與方法的綁定 比如我須要點(diǎn)擊按鈕A 后調(diào)用我自己寫的方法 bttonApressed() 我需要點(diǎn)中按鈕后 右側(cè)出現(xiàn)視圖欄 點(diǎn)中 New Referencing Outlet 拉出一條線拖到 左側(cè)上***個(gè)菱形上后 選 buttonA 表示這個(gè)butonA 與代碼中聲明的buttonA關(guān)聯(lián)上了 然后在點(diǎn)中Touch Up Inside 拉出一條線 依然拖動(dòng)到左側(cè)***個(gè)菱形上選擇bttonAPressed()方法 這表示點(diǎn)擊按鈕buttonA后 會(huì)調(diào)用自己寫的方法 bttonAPressed() 簡單吧 。 Android 開發(fā)的可視化布局卻是不如IPHONE開發(fā)的布局,J2ME 就更不行了。如圖:
實(shí)現(xiàn)類
- //
- // testViewController.m
- // test
- //
- // Created by 宣雨松 on 11-7-5.
- // Copyright 2011年 __MyCompanyName__. All rights reserved.
- //
- #import "testViewController.h"
- @implementation testViewController
- - (void)dealloc
- {
- [super dealloc];
- }
- - (void)didReceiveMemoryWarning
- {
- // Releases the view if it doesn't have a superview.
- [super didReceiveMemoryWarning];
- // Release any cached data, images, etc that aren't in use.
- }
- #pragma mark - View lifecycle
- /*
- // Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- - (void)viewDidLoad
- {
- [super viewDidLoad]
- }
- */
- UIAlertView * alertA;
- - (void)bttonAPressed:(id)text
- {
- //在這里實(shí)現(xiàn)了按鈕A綁定的方法
- //這里說一下nil 這個(gè)東西就好比java 語言中的 null
- alertA= [[UIAlertView alloc] initWithTitle:@"我的視圖" message:@"點(diǎn)開了A彈出對(duì)話框"
- delegate:self cancelButtonTitle:@"確定" otherButtonTitles: nil];
- //objectiveC開發(fā)中調(diào)用方法是用"[]" 例如: [alertA addButtonWithTitle:@"取消"];
- //如果是為方法賦值則類似java 對(duì)象.成員 例如 :textFieldA.text
- //添加了一個(gè)取消按鈕
- [alertA addButtonWithTitle:@"取消"];
- //將這個(gè)UIAlerView 顯示出來
- [alertA show];
- //objective-C 不像java 有自己的垃圾回收機(jī)制 所以我們?cè)诰帉懗绦蛑幸欢ㄒ⒁忉尫艃?nèi)存 從一開始就養(yǎng)成良好習(xí)慣
- [alertA release];
- }
- UIAlertView * alertB;
- -(void)bttonBPressed:(id)text
- {
- //在這里實(shí)現(xiàn)了按鈕B綁定方法
- alertB = [[UIAlertView alloc] initWithTitle:@"我的視圖" message:@"點(diǎn)開了B彈出對(duì)話框"
- delegate:self cancelButtonTitle:@"確定" otherButtonTitles: nil];
- [alertB show];
- [alertB release];
- }
- - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
- {
- //在這里添加對(duì)話框按鈕響應(yīng)事件 根據(jù)不同窗口判斷
- if(alertView == alertA)
- {
- switch (buttonIndex)
- {
- case 0:
- textFieldA.text = @"A窗口中點(diǎn)擊確認(rèn)按鈕";
- break;
- case 1:
- textFieldA.text = @"A窗口點(diǎn)擊取消按鈕";
- default:
- break;
- }
- }else if (alertView == alertB)
- {
- textFieldB.text = @"B窗口點(diǎn)擊確定按鈕";
- }
- }
- - (void)viewDidUnload
- {
- [super viewDidUnload];
- // Release any retained subviews of the main view.
- // e.g. self.myOutlet = nil;
- }
- - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
- {
- // Return YES for supported orientations
- return (interfaceOrientation == UIInterfaceOrientationPortrait);
- }
- @end
小結(jié):iPhone教程 對(duì)話框與輸入框按鈕響應(yīng)界面的內(nèi)容介紹我那了,希望本文對(duì)你有所幫助。
本文轉(zhuǎn)自 http://blog.csdn.net/xys289187120/article/details/6586961--