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
复制代码

 

posted @   公羽翁  阅读(1216)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示