iOS-数据传值方法

本文介绍了在UITableViewDelegate中自定义Cell时如何进行数据传值的三种方法:1) 通过自定义初始化方法传递;2) 暴露Cell属性进行修改;3) 创建自定义方法设置数据。其中,不推荐直接暴露控件,建议使用初始化方法或自定义函数以提高代码安全性。
摘要由CSDN通过智能技术生成

iOS数据传值方法记录

在写UITableViewDelegat自定义创建Cell方法中遇到了数据传值的难题,最后了解到有三种方式可以做到数据传值。

  1. 在自定义Cell中初始化定义时将数据带入到初始化方法中。
  2. 在自定义Cell中通过将需要修改的属性或者控件数值暴露在***.h***文件中,方便外部调用以及修改。
  3. 在自定义Cell中创建方法,通过调用方法做到数据传值。

三种方式分别说明

通过修改初始化方法

首先需要在自定义Cell文件的***.h***文件中声明自定义初始化函数

//例如
-(instancetype)initWithStyle:(UItableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier arrName:(Nsstring *)nameString;

然后需要在***.m***文件中使用自定义初始化函数,并且创建一个全局的自定义变量来接受需要传输的数据

-(instancetype)initWithStyle:(UItableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier arrName:(Nsstring *)nameString
{
	self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
	if(self){
		self.nameString = nameString;				//self.nameString 是自定义全局变量。
		[self createView];							//创建其他数据类型的函数。
	}
	return self;
}

将需要修改的数据暴露在***.h***文件中

在自定义Cell***.h***文件中将需要修改的控件或者变量在此声明

@property(nonatomic,strong) UILable * lable;

.m文件

self.lable = lable;

在创建自定义Cell时,通过一下方式进行修改

cell.lable.text = @"";

在自定义Cell中创建自定义函数,函数中定义修改的方法

需要将自定义函数暴露在Cell的***.h***文件中方便外部调用。

-(void)setDate:(NSString *)stringName;

在Cell的***.m***文件中定义,创建自定义Cell时,需要调用该函数,不然无法使用。

[cell setDate:self.myarr[indexPath.row]];

以上方法中不建议使用第二种方法,将控件暴露给外部不是。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值