开发过程中 很可能 把swift不成熟的地方用成熟的oc 代码来弥补一下 , 下面简单来学习一下,我也是照着视频 学习的 卖弄谈不上 就是一次学习笔记, 具体问题还是具体分析吧.
需求 给展出出来的的图片 添加触摸点击响应事件
实施方式:把这个 有触摸事件的UIImageView(OFImageView) 用 OC 写成一个对象 然后用swift 去调用
1,第一次创建 OFImageView 时候 会生成一个XXXX-Bridging-Header.h 文件 查了好多资料解释说 这个 桥梁头文件里
是用来 :
import 所有Swift需要调用OC的类 的那个库用到的头文件
swift 需要的头文件 才写在这 不是 oc头文件都要写在这
当前这个demo 没有过多的需求 暂时 只添加
"#import "OFImageView.h"
2,
#import <UIKit/UIKit.h> @interface OFImageView : UIImageView{ id _target; SEL _sel; } - (void)test; // - (void)addtarget:(id)target withSelector:(SEL)sel; //添加了点击事件给这个图片 @end #import "OFImageView.h" @implementation OFImageView - (void)addtarget:(id)target withSelector:(SEL)sel { _target = target; _sel = sel; self.userInteractionEnabled = YES; } - (void)test { NSLog(@"print test"); } - (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { if(_target){ [_target performSelector:_sel withObject:self afterDelay:0];//触发这个事件 } } @end
调用
效果上图片:
要想让 这个图片点击起来有效果 像按钮一样 就拓展一下 touch方法 即可 此处不赘述
分享一篇好文 关于 touch的 " iOS中的触摸事件和手势处理 "
http://my.oschina.net/aofe/blog/268749