界面之间是如何传值的
生活随笔
收集整理的這篇文章主要介紹了
界面之间是如何传值的
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
ios頁面間傳遞參數四種方式
1、使用SharedApplication,定義一個變量來傳遞.
2、使用文件,或者NSUserdefault來傳遞
3、通過一個單例的class來傳遞
4、通過Delegate來傳遞。
IOS開發使用委托delegate在不同窗口之間傳遞數據是本文要介紹的內容,主要是來講解如何使用委托delegate在不同窗口之間傳遞數據,具體內容來看詳細內容。在IOS開發里兩個UIView窗口之間傳遞參數方法有很多,比如
前面3種方法,暫且不說,這次主要學習如何使用通過Delegate的方法來在不同的UIView里傳遞數據
比如: 在窗口1中打開窗口2,然后在窗口2中填入一個數字,這個數字又回傳給窗口1。
窗口1
窗口2
窗口2的結果傳遞給窗口1
1、首先定義個一委托UIViewPassValueDelegate用來傳遞值
@protocol?UIViewPassValueDelegate?? -?(void)passValue:(NSString?*)value;?? @end這個protocol 就是用來傳遞值
2、在窗口1的頭文件里,聲明delegate
#import?<UIKit/UIKit.h>? #import?"UIViewPassValueDelegate.h"??@interface?DelegateSampleViewController?:?UIViewController?<UIViewPassValueDelegate>?{??UITextField?*_value;?? }?? @property(nonatomic,?retain)?IBOutlet?UITextField?*value;?? -?(IBAction)buttonClick:(id)sender;?? @end并實現這個委托
-?(void)passValue:(NSString?*)value?? {??self.value.text?=?value;??NSLog(@"the?get?value?is?%@",?value);?? }button的Click方法,打開窗口2,并將窗口2的delegate實現方法指向窗口1。
第二個窗口的實現
.h 頭文件
#import?<UIKit/UIKit.h>? #import?"UIViewPassValueDelegate.h"??@interface?ValueInputView?:?UIViewController?{??NSObject<UIViewPassValueDelegate>?*?delegate;??UITextField?*_value;?? }?? @property(nonatomic,?retain)IBOutlet?UITextField?*value;?? @property(nonatomic,?retain)?NSObject<UIViewPassValueDelegate>?*?delegate;?? -?(IBAction)buttonClick:(id)sender;?? @end.m實現文件
#import?"ValueInputView.h"??@implementation?ValueInputView?? @synthesize?delegate;?? @synthesize?value?=?_value;?? -?(void)dealloc?{??[self.value?release];??[super?dealloc];?? }??-?(IBAction)buttonClick:(id)sender?? {??[delegate?passValue:self.value.text];??NSLog(@"self.value.text?is%@",?self.value.text);??[self?dismissModalViewControllerAnimated:YES];??????}?? -?(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.??}??-?(void)viewDidUnload?{??[super?viewDidUnload];??//?Release?any?retained?subviews?of?the?main?view.??//?e.g.?self.myOutlet?=?nil;??}??@end轉載于:https://my.oschina.net/u/2559341/blog/550113
總結
以上是生活随笔為你收集整理的界面之间是如何传值的的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 伟大的ssh命令
- 下一篇: 让 Git 全局性的忽略 .DS_Sto