iOS 常用的反向传值协议的使用
来源:互联网 发布:网络监测软件 编辑:程序博客网 时间:2024/06/05 07:01
1.首先我们要做的就是创建一个协议,在.h文件中创建协议
// 红色部分是协议的名字
@protocol chanageLabelTextDelete <NSObject>
// 这是协议的方法
- (void)chanageLabelText:(NSString *)address longitude:(NSString*)Longitude Latitude:(NSString*)latitude;
@end
@interface AddressSeacherController :UIViewController
@property (assign,nonatomic,readwrite)id <chanageLabelTextDelete>delegate;// 创建协议的属性,全局使用
@end
//点击cell执行的事件
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
BaiDuPlaceModel *model =self.datasource[indexPath.row];
if ([_delegaterespondsToSelector:@selector(chanageLabelText:longitude: Latitude:)]) {
[_delegatechanageLabelText:[NSStringstringWithFormat:@"%@",model._name]
longitude:model._longitude
Latitude:model._latitude];
}
[self.navigationControllerpopViewControllerAnimated:YES];
}
3.结下我们要想从另一个类中获取协议方法所传的值,我们就必须遵守这个协议
#import "bookingPracticeViewController.h"
#import "AddressSeacherController.h"
@interfacebookingPracticeViewController ()<chanageLabelTextDelete>//<>里面便是协议的名字
- (IBAction)customerAdress:(UIButton*)sender {//创建该协议类的对象,然后该类的鞋
AddressSeacherController *address=[[AddressSeacherControlleralloc]init];
address.delegate =self;//然后该类与当前类签订协议
[self.navigationControllerpushViewController:addressanimated:YES];
}
- (void)chanageLabelText:(NSString *)address longitude:(NSString*)Longitude Latitude:(NSString*)latitude{//签订协议,就必须遵守协议的方法
//这三个就是获取该内容的值
self.detailAdressTeField.text = address;
longitude=Longitude;
Latitude =latitude;
}
- iOS 常用的反向传值协议的使用
- ios常用的几种反向传值
- iOS ---反向传值 协议传值
- ios反向传值--代理协议
- ios 协议的使用
- 浅析 协议和block的反向传值
- 【iOS开发-26】利用协议代理实现导航控制器UINavigationController视图之间的正向传值和反向传值
- 【iOS开发-26】利用协议代理实现导航控制器UINavigationController视图之间的正向传值和反向传值
- iOS开发利用协议代理实现导航控制器UINavigationController视图之间的正向传值和反向传值
- 协议、反向传值
- iOS Delegate传值 协议两个页面反向传值
- 【ios】NSCoding协议的使用
- iOS中协议的使用
- [IOS]协议的简单使用
- iOS中协议的使用
- ios中控制器之间的反向传值之---Block
- iOS --- block的一些使用方法(反向传值)
- 关于iOS的UI界面反向传值方法总结
- 激活码汇总
- MT7688 串口调整每次接收数据的字节数
- JSON字符串
- 解决hive元信息乱码的问题
- Java中使用CountDownLatch进行多线程同步
- iOS 常用的反向传值协议的使用
- avalon数据缓存功能:ms-data
- truncate和delete的区别
- HTML5系列文章【1】带你了解html主要标签及属性
- Springboot 之 解决IDEA读取properties配置文件的中文乱码问题
- windows下nginx安装、配置与使用
- Android与H5的交互
- LeetCode学习篇二十七——Maximum Subarray
- 了解一下winsock