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

2019-03-02 00:57|来源: 网路

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

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

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

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

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

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

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

废话不多说直接开始吧

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

添加的时候选择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

 


转自:http://www.cnblogs.com/PleaseInputEnglish/p/3486578

相关问答

更多
  • 计算机一级分为一级MS-OFFICE和WPS-OFFICE;前者为微软公司的一些办公软件:word,excel,powerpoint,还有上网题,测试打字速度的题,选择题等。 报名的地方一般在一些大学里,有的学校有培训,有的学校没有培训。报名费根据各地各时而异。(我报名的时候是80,可幸的是我过了。)
  • 推荐两本中文书籍(objective-C程序设计)语法,(iphone开发基础教程)例子,这俩比较适合初学者.iphone开发的中文书籍屈指可数,其他百度一下就知道了. 最好采用MAC电脑,虚拟机有诸多问题.如果手头很紧,可以将ios设备越狱,将xcode破解,即可无证书真机测试.(我就是这么干的= =)
  • 选C,..表示上级目录,.表示当前目录。
  • 1、请看懂以下几句 #如果设置chroot_local_user=YES, #那么chroot_list中列出的用户不会chroot。 chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list 若是按照以上的方法设置的话是不需要添加用户到chroot_list的。你建一个空文件都可以的。 2、可是etc下并无vsftpd目录? 这个有点诡异?也许是版本问题,路径不一样。
  • 主要只有操作上的不同: cd ..是返回上一层目录, cd -是返回到上一次的工作目录。 cd命令概述: cd是Change Directory的缩写,这是用来切换工作目录的命令。cd命令是一个内置命令,可以通过type命令查看。 cd命令语法 cd [相对路径或绝对路径或特殊符号] 说明: 不加参数时,默认切换到用户主目录,即环境变量HOME指定的目录,如root用户的HOME变量为/root,那么cd命令不带参数时便切换到/root目录下。 绝对路径是从跟目录开始的,如/root或/home/sgl,相 ...
  • 返回上级目录 cd .. *.sh文件执行是 ./*.sh
  • 书籍没有,推荐你去智能手机网站论坛有专区,里面有教程和方法,高手也很多,天网,冰冰,八神,沃达,这几个不错,可以去看看
  • 您尝试使用%~1来升级目录结构中的一个级别是具有创造性且完全无效的语法。 正确的语法就像使用..\一样简单。 由于%~dp0以\结尾,所以不需要%~dp0 \ 。 %windir%\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe %~dp0..\bin\ERecruitGenerateReportsWindowsService.exe Your attempt to use %~1 to go up one level in the directory ...
  • 我认为这就是你要找的东西: RewriteEngine on RewriteRule ^/?(.+)/manufacturer/ /$1/ [R=301,QSD] 如果加载了重写模块,这将在http服务器主机配置或动态配置文件( .htaccess )中工作。 如果您决定使用动态配置文件,则必须启用对动态配置文件的解释。 在这种情况下,该文件应放在您的http服务器DocumentRoot文件夹中。 您的描述在一个小细节中自相矛盾:在描述中您说“/ manufacturer / any symbols”, ...