IOS 页面属性传值、委托传值、单例传值
2013-09-13 09:06
260 查看
IOS 页面属性传值、委托传值、单例传值
2013-09-09 15:13 9人阅读 评论(0) 收藏 举报IOS
页面属性传值委托传值单例传值
一委托传值:
ViewController.h文件中
// ViewController.h
// 9.10ch-08委托传值
//
// Created by ibokan on 13-9-9.
// Copyright (c) 2013年 wzf. All rights reserved.
//
#import <UIKit/UIKit.h>
#import "DataProtocol.h"//协议名称
@interface ViewController : UIViewController<DataProtocol>
@property (retain, nonatomic) IBOutlet UITextField *outlable;
- (IBAction)BT:(UIButton *)sender;
@end
ViewController.m文件中
#import "ViewController.h"
#import "Data.h"//单例传值
#import "EditViewController.h"
- (IBAction)BT:(UIButton *)sender {
EditViewController *EDVC=[[EditViewController alloc] initWithNibName:@"EditViewController" bundle:[NSBundle mainBundle]];
// [Data Defoultdata].str=self.outlable.text;//单例传值
//属性传值
EDVC.first=self.outlable.text;
EDVC.delegate=self;
[self presentViewController:EDVC animated:YES completion:nil];
[EDVC release];
}
-(void)editData:(NSString *)str
{
//str传过来的值赋值给outlable
self.outlable.text=str;
}
EditViewController.h
// EditViewController.h
// 9.10ch-08委托传值
//
// Created by ibokan on 13-9-9.
// Copyright (c) 2013年 wzf. All rights reserved.
//
#import <UIKit/UIKit.h>
#import "DataProtocol.h"
#import "Data.h"
@interface EditViewController : UIViewController
@property (retain ,nonatomic)NSString *first;//接收第一个页面传来的值
- (IBAction)backBT:(UIButton *)sender;
@property(retain,nonatomic)id <DataProtocol> delegate;//添加委托对象
@property (retain, nonatomic) IBOutlet UITextField *Edittextfiled;
@end
EditViewController.h
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
//-------委托传值---------
self.Edittextfiled.text=self.first;
//------------单例传值
// self.Edittextfiled.text=[Data Defoultdata].str;
}
EditViewController.m
- (IBAction)backBT:(UIButton *)sender {
[self.delegate editData:self.Edittextfiled.text];//委托传值
//[Data Defoultdata].str=self.Edittextfiled.text;//单例传值
[self dismissViewControllerAnimated:YES completion:nil];
}
DataProtocol.h协议
// 9.10ch-08委托传值
//
// Created by ibokan on 13-9-9.
// Copyright (c) 2013年 wzf. All rights reserved.
//
#import <Foundation/Foundation.h>
@protocol DataProtocol <NSObject>
@required
-(void)editData:(NSString *) str;@end
// Data.h单例传值
#import <UIKit/UIKit.h>
//单例传值
@interface Data : UIViewController
@property(nonatomic,retain)NSString *str;
+(Data *)Defoultdata;
@end
Data.m单例传值
static Data *data;//定义一个 静态属性
+(Data *)Defoultdata
{
if (data==nil) {
data=[[Data alloc]init];
}
return data;
}
相关文章推荐
- IOS 页面属性传值、委托传值、单例传值
- iOS页面传值(代理,属性,单例)-传值
- iOS--页面间的代理传值(属性、代理(委托)、代码块、单例、通知)
- iOS 页面间传值 之 属性传值,代理传值
- iOS 属性传值 --从一级页面传到三级页面
- ios 页面之间的传值:属性传值,代理传值,block传值
- IOS 页面传值(属性传值,代理传值)
- iOS中详解Block作为property属性实现页面之间传值
- iOS 页面跳转传值,属性传值,代理传值,代码块传值,单例传值,通知传值
- iOS 页面间传值 之 属性传值,代理传值
- IOS 页面间传值(属性传值、block传值、代理传值、单例传值、NSNotificaion传值)
- IOS学习笔记(页面传值:属性传值,协议代理传值,闭包传值)
- IOS页面之间通过委托(协议)传值
- ios两视图间委托(delegate)传值
- iOS 页面间几种传值方式(属性,代理,block,单例,通知)
- iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)
- iOS页面间传值的五种方式总结(Delegate/NSNotification/Block/NSUserDefault/单例)
- iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)
- UI:页面传值、单例模式传值、属性传值、NSUserDefaults 数据持久化
- iOS页面间传值的方式(NSUserDefault/Delegate/NSNotification/Block/单例)