IOS开发---菜鸟学习之路--(十八)-利用代理实现向上一级页面传递数据

简介: 其实我一开始是想实现微信的修改个人信息那样的效果 就是点击昵称,然后跳转到另外一个页面输入信息 但是细想发现微信的话应该是修改完一个信息后就保存了 而我做的项目可能需要输入多个数据之后再点击提交的。

其实我一开始是想实现微信的修改个人信息那样的效果

就是点击昵称,然后跳转到另外一个页面输入信息

但是细想发现微信的话应该是修改完一个信息后就保存了

而我做的项目可能需要输入多个数据之后再点击提交的。

所以我们需要在点击完成后 将数据传递回上一个页面,

上一个页面显示修改的信息

接着我就去找度娘了。。。

废话不多说直接开始吧

首先我们需要添加一个代理

添加的时候选择Objectivie-c protocol

然后添加如下代码

1 #import <Foundation/Foundation.h>
2 
3 @protocol HDMDelegate <NSObject>
4 -(void)hdmpassValue:(NSString *)value;
5 @end
HDMDelegate

然后在需要回传的页面的.H文件中增加

#import "HDMDelegate.h"

并添加

@property(nonatomic,assign) NSObject<HDMDelegate> *delegate;

然后在.M文件中添加

1 -(IBAction)buttonparess:(id)sender
2 {
3     [self.delegate hdmpassValue:valuetextfield.text];
4     [self.navigationController popViewControllerAnimated:YES];
5 }
View Code

这样我们在点击了按钮后他就会向上级传值了

接着在上一级的界面中实现该代理就可以了

具体的方法如下:

首先先在.h文件中 引入头文件

#import "HDMDelegate.h"

然后 增加代理

<HDMDelegate>

最后在.m文件中实现 代理的方法就可以了

1 -(void)hdmpassValue:(NSString *)value
2 {
3     self.hdm=value;
4     [mytableview reloadData];
5 }
View Code

 

目录
相关文章
|
3天前
|
iOS开发 开发者 容器
探索iOS开发中的SwiftUI框架
【6月更文挑战第21天】本文深入探讨了苹果在iOS开发中推出的SwiftUI框架,旨在为开发者提供一种声明式、更简洁的界面设计方法。文章首先概述了SwiftUI的核心概念和优势,接着通过一个天气预报应用实例,详细讲解了如何使用SwiftUI进行布局和用户界面的设计。此外,还讨论了SwiftUI与UIKit的差异,以及如何将SwiftUI集成到现有的项目中。最后,文章展望了SwiftUI的未来发展方向,包括潜在的改进和新特性。
|
3天前
|
Java 开发工具 Android开发
安卓与iOS开发差异解析
【6月更文挑战第21天】本文旨在深入探讨安卓和iOS两大移动操作系统在应用开发过程中的主要差异。通过对比分析,揭示各自的设计哲学、编程语言选择、用户界面构建、性能优化策略以及发布流程的异同。文章将提供开发者视角下的实用信息,帮助他们更好地理解各自平台的特点和挑战,从而做出更明智的开发决策。
|
4天前
|
Java 开发工具 Android开发
探索安卓与iOS开发的核心差异
【6月更文挑战第20天】在移动应用开发的广阔天地中,安卓和iOS两大平台各自占据半壁江山。本文将深入探讨这两大操作系统在开发过程中的主要区别,包括编程语言、开发工具、用户界面设计哲学、系统架构以及市场分布等方面。通过对这些关键差异的分析,旨在为开发者提供一份实用的指南,帮助他们在面对项目决策时,能够更加明智地选择合适的平台,并针对特定平台优化他们的应用。
|
4天前
|
开发工具 Android开发 iOS开发
探索安卓与iOS开发的差异:从工具到用户体验
【6月更文挑战第20天】在移动应用开发的广阔天地中,安卓和iOS两大平台各自占据半壁江山。本文将深入探讨这两个操作系统在开发环境、编程语言、用户界面设计以及性能优化等方面的关键差异。我们将通过比较分析,揭示各自平台的独特优势和面临的挑战,为开发者提供决策参考,并为最终用户提供更深层次的用户体验洞察。
|
3天前
|
安全 Android开发 iOS开发
探索安卓与iOS开发的差异:平台特性与用户体验的对比分析
移动应用开发的两大阵营——安卓与iOS,各自拥有独特的开发环境、用户群体和市场定位。本文将深入探讨这两个操作系统在应用开发过程中的主要差异,包括编程语言、开发工具、用户界面设计、性能优化、安全性考量以及发布流程等方面。通过比较分析,旨在为开发者提供跨平台开发的见解和策略,以优化应用性能和提升用户体验。
9 0
|
1月前
|
Java iOS开发
iOS的数据序列化(又称持久化)的两类使用方式
iOS的数据序列化(又称持久化)的两类使用方式
25 0
|
存储 SQL 数据库
iOS 数据持久化方案-Realm的使用(下)
iOS 数据持久化方案-Realm的使用(下)
515 0
iOS 数据持久化方案-Realm的使用(下)
|
SQL 存储 数据可视化
iOS 数据持久化方案-Realm的使用(上)
iOS 数据持久化方案-Realm的使用(上)
932 0
iOS 数据持久化方案-Realm的使用(上)
|
存储 开发框架 C#
iOS数据持久化之二——归档与设计可存储化的数据模型基类(二)
iOS数据持久化之二——归档与设计可存储化的数据模型基类
209 0
iOS数据持久化之二——归档与设计可存储化的数据模型基类(二)
|
存储 iOS开发 开发者
iOS数据持久化之二——归档与设计可存储化的数据模型基类(一)
iOS数据持久化之二——归档与设计可存储化的数据模型基类
148 0
iOS数据持久化之二——归档与设计可存储化的数据模型基类(一)