Swift基础之Swift调用OC语言文件使用步骤

Swift语言中,有很多封装类并没有,如果需要使用到,就需要桥接OC语言中的类,这时候就需要使用桥接头文件,一下是使用的步骤:

创建一个Swift项目Demo,然后新建一个OC语言的文件

如图:

创建一个BgImgView的类,选择对应的Object-C语言,点击Next按钮

会弹出提示框,询问是否需要配置一个桥接头文件,点击创建按钮(第三个)


这个时候会自动生成一个桥接头文件

现在开始在OC文件中添加需要使用的相关代码

.h文件

{
    id _targetT;
    SEL _selT;
}

//不带参数的行数
-(void)testT;
//待返回参数
-(NSString *)nameStr;
//添加一个点击事件方法,模仿按钮的点击
-(void)addTarget:(id)targetTT withSelector:(SEL)selecTT;

.m文件

//不带参数的行数
-(void)testT
{
    NSLog(@"调用了testT方法。。。。");
}
//待返回参数
-(NSString *)nameStr
{
    return @"好好学习,天天向上";
}
//添加一个点击事件方法,模仿按钮的点击
-(void)addTarget:(id)targetTT withSelector:(SEL)selecTT
{
    _targetT = targetTT;
    _selT = selecTT;
    
    //是否交互
    self.userInteractionEnabled = YES;
}
-(void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
    if (_targetT)
    {
        [_targetT performSelector:_selT withObject:self];
    }
}

需要的代码写完后,需要在桥接文件中添加头文件,这里只写需要使用到的OC头文件即可,不需要把所有的OC文件都写上


然后在 .Swift 文件中使用,

//创建一个BgImgView对象
        let bgImgV = BgImgView.init(frame:CGRectMake(10, 100, 200, 100));
        bgImgV.image = UIImage.init(named: "22.jpg");
        
        //调用方法
        bgImgV.testT();
        
        //返回参数方法
        let nameStr = bgImgV.nameStr();
        NSLog("输出了。。。%@", nameStr);
        
        //添加点击事件
        bgImgV.addTarget(self, withSelector: #selector(ViewController.imgClick));
        
        self.view.addSubview(bgImgV);
        
    }
    
    func imgClick(imgV:BgImgView){
        NSLog("点击了图片。。。。。");
    }

最后输出效果:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hbblzjy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值