正向傳值:
一、利用present 的 block 塊進行正向傳值
rootviewcontroller.m 中:
subviewcontroller* svc = [[subviewcontroller
alloc
]init];
= @"正向block傳值";
//這句是正向的屬性傳值,作用是讓b頁面,能持有a頁面的位址,因b要向a進行反向傳值
//想給誰傳值,就要持有誰的位址
svc.delegate = self;
[self
presentviewcontroller:svc animated:
yescompletion:^];
二、利用ab頁面中的屬性傳值
反向傳值:
一、利用block來進行b 介面向a 介面反向傳值
a 中宣告乙個block 屬性,將所要傳的值放入block 函式指標中,b 去接收
.h檔案
@property(nonatomic,copy) void(^blockcolor) (uicolor *);
.m 檔案
self.blockcolor([uicolor blackcolor]);
注意用 copy
b.m 檔案中接收
svc.blockcolor = ^(uicolor *color);
二、通知中心和觀察者模式反向傳值
例: viewcontroller1 向 viewcontroller2傳值 1.
@property (nonatomic,copy)nsstring *string;2.
[[nsnotificationcenter defaultcenter] postnotificationname:@"
鬼子來了
" object:nil];
3.viewcontroller2 中,向通知中心註冊,新增自己,成為觀察者。當資料改變時,用單例delegate 讀取資料
-(void)becomobserver
//收到廣播訊息後呼叫的方法
-(void)changetext
三、利用協議,介面反向傳值
viewcontroller2為委託方,viewcontroller1為**,
在viewcontroller2 中委託方制定協議,並且屬性delegate = viewcontroller1,要遵循協議;
在viewcontroller1 中,將viewcontroller2物件的屬性delegate 設為自己(vc1)
1.viewcontroller1.m
vc2.delegate = self;
2.viewcontroller2.h檔案
//委託方制定協議,**人必須遵守
@protocol backvaluedelegate
-(void)changetext:(nsstring *)string
@end
@inte***ce viewcontroller1 :uiviewcontroller
//用來設定**,並且遵守協議
@property (nonatomic,retain) iddelegate;
@end
3. viewcontroller2.m 檔案
//利用**去回傳資料
[self.delegate changetext:@"****"];
五、用自己實現的單例進行傳值
六、用targetaction 的方式進行兩個介面來回反覆呼叫傳值
常用的是詳細寫的幾種
IOS四種反向傳值的方法
如下 由根檢視推出子檢視,再由子檢視推出根檢視,在推出根檢視時,子檢視傳乙個color的屬性給根檢視,用來修改根檢視的背景顏色 根檢視控制器 m檔案 void viewdidload void createbutton void btnclick void changecolor uicolor c...
PHP頁面傳值的6種獲取方法
初學php,以前使用asp沒有這些傳值的這麼多說法,更不存在php版本相容的問題,但是php中遇到了。在網上有不少朋友遇到過php傳值的問題,大都是因為看了老php版本的教程但用著新版本的php引起的,這裡icech邊學邊記錄,整理了幾種php傳值的方法,就作為學習筆記了,也希望新學php的朋友少走...
PHP頁面傳值的6種獲取方法
php頁面傳值的6種獲取方法 1 php4以後獲取傳值的方法 一般在頁面中傳值常見的是post get和cookie幾種,所以下面我也主要介紹這幾種。php4以後都採用的是 post get等陣列來獲取網頁傳值。在php3.0及以下版本都是用的是 http post vars http get va...