左开发时间久了看看以前的代码。或者看看别人的代码,总感觉有些许繁琐需要优化,今天我门以全局弹窗为例说一下个人的小想法。
一、首先我们看一下我前同事是怎么完成这个功能的
//加载弹窗
UIWindow *window = [UIApplication sharedApplication].keyWindow;
HKLeSeeNewPeopleView * view = [HKLeSeeNewPeopleView fastView];
view.frame= window.frame;
view.titleImg.image= [UIImageimageNamed:@"yin1"];
[windowaddSubview:view];
//加载点击事件
就是添加了一个手势点击事件。在这段话下面。 然后再写上方法
二、 当然我不是说这种方法不行。 因为他也实现了功能,所以也是可行的。 但是我们应该有更简单更容易扩展的方式(外部调用简单,实现起来可能更麻烦) 作为一个优秀的程序员就是要让代码更加优雅
[[HKSuspensionView Share] showHappyHomeFinish:^(BOOL close){
//处理点击后的内容
}];
三、是不是看起来超级简单?(优雅)。 那么这个是不需要传递参数的, 当我们需要公用这个类。需要传递参数时我们需要怎么处理呢?
1、首先我们看外部调用。采用单里模式给定相关参数。 一般是枚举或者model。根据相关参数进行设置UI或者交互逻辑
[[NewCustomerGuideView sharedSingleton] showStyle:NewCustomerGuideWatch finish:^(NSInteger index){
//进行点击后的操作
}];
2、下面我们看一下实现方式
设定枚举以及回调 单例实现 关闭页面
网友评论