您好,登錄后才能下訂單哦!
界面間傳值:將前一個界面 的值傳到后一個界面 (從前往后傳)
方法:采用屬性傳值
步驟:1.后一個界面定義屬性.接收傳入的值.(屬性的類型和值的類型相同)
2.取出輸入框的文字
UITextField * tf = (UITextField *)[self.view viewWithTag:100];
secondViewController * second = [[secondViewController alloc]init];
將要傳遞的數據存入倉庫(單例)中
[Singleton shardSingleton].text = tf.text;
second.text = tf.text;
second.delegate = self;
QCtext
((NViewController *)self.navigationController).text = tf.text;
[self.navigationController pushViewController:second animated:NO];
[second release];
- (void)viewWillDisappear:(BOOL)animated
{
界面間傳值:第二種情況:將后一個界面的值傳到前一個界面 (從后往前傳)
方法: 代理初值
步驟: 1.定義協議. 在后面類中定義協議(傳值的方法定義協議)
2. 給后面類添加一個代理屬性
3.將代理設置為前一個界面的對象讓它服從協議,實現方法(傳值方法就變成了,協議中的方法),
4.在后面類中通過代理,調用該傳值方法.
傳值:
UITextField * tf = (UITextField *)[self.view viewWithTag:100];
代理調用方法,將值傳入
判斷對象是否實現方法
if ([self.delegate respondsToSelector:@selector(passValue:)]) {
[self.delegate passValue:tf.text];
}
[super viewWillDisappear:animated];
NSLog(@"%s",__FUNCTION__);
}
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。