iOS - 单例传值 /使用使用SharedApplication.进行传值(二)

1 使用SharedApplication,定义一个变量来传递.

2 使用文件plist,或者NSUserdefault来传递

3 通过一个单例的class来传递

4 通过Delegate来传递。

5  属性传值

6  数组,字典,数据库等


(1)AppDelegate.h

[objc]  view plain copy
  1. #import <UIKit/UIKit.h>  
  2.   
  3. @interface AppDelegate : UIResponder <UIApplicationDelegate>  
  4.   
  5. @property (strongnonatomicUIWindow *window;  
  6.   
  7. @property (strongnonatomicNSString *name;//定义一个NSString的  
  8. @property (strongnonatomicNSString *str;//定义一个NSString的  
  9.   
  10. @end  

(2) ViewController.h

[objc]  view plain copy
  1. #import "AppDelegate.h"  
  2. #import "OneViewController.h"  
  3. @interface ViewController : UIViewController  
  4.   
  5. @property (weak, nonatomic) IBOutlet UITextField *nameTextField;  
  6.   
  7. @property (weak, nonatomic) IBOutlet UITextField *qqTextfield;//输入框  
  8.   
  9. - (IBAction)go:(id)sender;//go按钮  
  10.   
  11.   
  12. @end  

[objc]  view plain copy
  1. - (IBAction)go:(id)sender {  
  2.   
  3. //    使用AppDelegate得到当前输入的数据  
  4.     AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];  
  5.     appDelegate.str = self.qqTextfield.text ;  
  6.     appDelegate.name = self.nameTextField.text;  
  7.      
  8.       
  9. //    进入下一页  
  10.     OneViewController *oneVC = [[OneViewController alloc]init];  
  11.     [self presentViewController:oneVC animated:YES completion:nil];  
  12.     
  13.       
  14. }  

(3) OneViewController.h

[objc]  view plain copy
  1. #import <UIKit/UIKit.h>  
  2.   
  3. #import "AppDelegate.h"  
  4. @interface OneViewController : UIViewController  
  5.   
  6. @property (weak, nonatomic) IBOutlet UITextField *aNameTextField;  
  7.   
  8. @property (weak, nonatomic) IBOutlet UITextField *oneTextField;  
  9.   
  10.   
  11.   
  12. @end  

[objc]  view plain copy
  1. - (void)viewDidLoad  
  2. {  
  3.     [super viewDidLoad];  
  4.     // Do any additional setup after loading the view from its nib.  
  5.   
  6. //    通过AppDelegate得到上一页输入的数据  
  7.     AppDelegate *appdelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];  
  8.     self.oneTextField.text = appdelegate.str;  
  9.     self.aNameTextField.text = appdelegate.name;  
  10.       
  11.       
  12. }  

效果图:


--

iOS - 单例传值 /使用使用SharedApplication.进行传值(二)_第1张图片

--


你可能感兴趣的:(ios,单例传值)