IOS开发之——私人通讯录控制器间传值(53)

一 概述

本节完成通讯录到成员添加页面,成员添加页面填写完姓名和电话号码后保存并返回到通讯录界面:

  • prepareForSegue:设置联系人控制器上的标题

  • 顺传:控制器之间的传值,需要把登录的账号传给联系人控制器

  • 逆传:控制器之间的传值,把添加用户信息传递给联系人控制器

二 效果图

 

三 功能实现

3.1 prepareForSegue(Login->Contact)

  • 利用performSegueWithIdentifier:方法可以执行某个Segue,完成界面跳转

3.2 顺传(Login->Contact)

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    NSLog(@"%@---%@--%@",segue.identifier,segue.sourceViewController,segue.destinationViewController);
    
    UIViewController *v=segue.destinationViewController;
    v.navigationItem.title=[NSString stringWithFormat:@"%@的联系人",_accountField.text];
}

3.3 逆传(Add->Contact)

AddController

- (IBAction)add:(id)sender
{
    //回到上一个控制器
    [self.navigationController popViewControllerAnimated:YES];
    //创建模型
    Contact *contact=[Contact contactWithName:_nameField.text phone:_phoneField.text];
    //2.把文本框的内容传递给联系人控制器
    //[self.contacts setName:_nameField.text phone:_phoneField.text];
    //2.通知代理做事情
    if ([_delegate respondsToSelector:@selector(viewController:didAddContact:)]) {
        [_delegate viewController:self didAddContact:contact];
    }
    
}

ContactController

- (void)viewController:(AddViewController *)add didAddContact:(Contact *)contact
{
    //把数据展示到联系人界面上
    NSLog(@"%@",contact.name);
    //保存
    [self.contacts addObject:contact];
    //刷新
    [self.tableView reloadData];
    
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值