开发过程中 很可能 把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