日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IOS delegate 委托 使用 两个View之间传数据

發布時間:2025/4/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IOS delegate 委托 使用 两个View之间传数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天講述 delegate 的使用,并給出例子來說明如何使用delegate在兩個View之間傳送數據

?

1.建立一個 single view 工程?

2.在viecontroller.xib文件里面放上一個button ?以及一個 textfield控件

3.新建一個 objective-c protocol文件(在向導里面有這個選項的)

4.實現protocol如下

#import <Foundation/Foundation.h>?

@protocol UIViewPassValueDelegate <NSObject>

-(void) passValue:(NSString*)value;

@end

?

5.在viewcontroll.h修改如下

#import <UIKit/UIKit.h>

#import "UIViewPassValueDelegate.h"

@interface CRViewController : UIViewController<UIViewPassValueDelegate>

{

? ? UITextField * textValue;

}

@property(retain,nonatomic) IBOutletUITextField * textValue;

-(IBAction)buttonPressed:(id)sender;?

@end

?

6.在viewController.m中實現如下

@synthesize? textValue;

//這里是對協議的實現

-(void)passValue:(NSString *)value

{

? ? self.textValue.text = value;

}

?

//這里是button按下去的觸犯時間,其中CRAAViewController 是另外的一個view,后面會定義

-(IBAction)buttonPressed:(id)sender

{

? ? CRAAViewController * aaView = [[CRAAViewControlleralloc] initWithNibName:@"CRAAViewController"bundle:[NSBundlemainBundle]];

? ? aaView.delegate = self;

? ? [selfsetModalTransitionStyle:UIModalTransitionStyleCoverVertical];

? ? [selfpresentModalViewController:aaView animated:YES];

}

?

7.新建一個 objective-c class ?繼承自 UIViewController ?并選擇構建xib

實現頭文件如下:

#import "UIViewPassValueDelegate.h"

@interface CRAAViewController : UIViewController

{

? ? id<UIViewPassValueDelegate> * delegate;

}?

@property(nonatomic,assign) id<UIViewPassValueDelegate> * delegate;

-(IBAction)buttonClicked:(id)sender;

@end

?

8.在.m文件里面實現如下:

@synthesize delegate;

-(IBAction)buttonClicked:(id)sender

{

? ? [delegate passValue:@"123456"];

? ? [selfdismissModalViewControllerAnimated:YES];

}

?

當然,上面有些東西沒有講到,比如將textfield以及button與變量的關聯等

?

以上的功能主要是這樣的:點擊第一個視圖,跳轉到第二個視圖,然后點擊第二個視圖回到第一個視圖,并將第二個視圖里面的值傳回到第一個視圖

也就實現了利用delegate在不同的view之間進行傳值的功能。

轉載于:https://www.cnblogs.com/rollrock/archive/2012/12/08/2808976.html

總結

以上是生活随笔為你收集整理的IOS delegate 委托 使用 两个View之间传数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。