当先锋百科网

首页 1 2 3 4 5 6 7

一、点击“下载”按钮的时候,弹出一个Label来

通知

当你点击“下载”按钮的时候,弹出一个Label,这个应该在哪里写代码呢,是不是应该在这里写代码

通知

1)点击事件里面,第一步,设置按钮的状态

2)第二步,弹出一个Label来,

这个弹出的Label,最终,是不是要把它加到我们的哪里,最终是要把它加到我们的self.view里面吧

通知

是不是加到控制器所管理的view里面

所以说,我们现在这是个什么代码

通知

这是一个单元格这个代码吧,这是在自定义Cell里面

我们在这里创建一个Lable,这个Label要加到我们控制器的view里面,你在这里能访问到控制器的view吗

访问不到吧,所以说,这里用什么,这儿是不是得用代理

也就是说,当用户点击完毕这个按钮之后,这儿要通过一个代理方法

在控制器的view里面,创建一个Label,把Label加到控制器的view里面

所以说,我们这个地方,是不是可以用个代理啊

好,再把代理复习一下

1)现在,谁要代理,是不是这个自定义Cell,这个自定义Cell,是不是需要用一个代理,它要找一个代理,帮它创建一个Label,把Label加到控制器的View里面啊,所以说,自定义Cell,需要一个代理,

2)既然它需要一个代理,所以这个协议写在哪里

通知

自定义Cell的.h文件里,叫什么

通知

CZAppCell复制过来吧,加一个Delegate

通知

3)然后呢,这个方法名儿呢

- (void)appCellDidClickDownloadButton

通知

是不是当用户点击这个下载按钮啊

这儿参数是什么

通知

是不是把自己传过来

通知

@protocol CZAppCellDelegate < NSObject >

- (void)appCellDidClickDownloadButton:(CZAppCell *)appCell;

@end

通知

前面加上@class CZAppCell;

这样的话,这协议是不是就搞定了

4)协议搞定了以后,接下来,是不是要在这个Cell中加一个代理这个属性啊

通知

@property(nonatomic,weak)id < CZAppCellDelegate > *delegate;

报错了,为什么

通知

不要星号,因为id就是NSObject *,星号吧

5)然后,接下来,在这里,是不是要用一下这个代理

通知

好,在这里,我们就要干什么,用代理

if(condition)

通知

if([self.delegate respondsToSelector:@selector(appCellDidClickDownloadButton:]){

}

通知

这里写什么,写我们的代理方法吧

appCellDidClickDownloadButton: