zoukankan      html  css  js  c++  java
  • [Xcode 实际操作]九、实用进阶-(6)在Swift文件中调用Object-C的类和方法

    目录:[Swift]Xcode实际操作

    本文将演示在Swift文件中调用Object-C的类和方法。

    在项目文件夹【DemoApp】上点击鼠标右键

    ->【New File】创建一个Object-C的类文件

    ->【Cocoa Touch Class】->【Next】->

    【Class】:SumNumbers。输入类名。

    【Subclass of】:NSObject,父类名称

    【Language】:Object-C,类文件的默认语言

    ->【Next】->保存默认的存储位置点击【Create】

    ->系统提示是否创建桥接头文件,将Object-C类的头文件,放置在桥接头文件中,Swift就可以访问OC类。

    ->点击【Create Bridging Header】->此时系统自动创建了:

    一个头文件【SumNumbers.h】

    一个实现文件【SumNumbers.m】

    一个桥接头文件【DemoApp-Bridging-Header.h】

    ->点击项目名称【DemoApp】,查看项目的配置信息

    ->打开编译设置面板【Building Settings】,需要确认是否已经配置了桥接头文件。

    ->搜索【Bridging-Header】,查看到桥接头文件以及自动引入。

    ->打开头文件【SumNumbers.h】

     1 #import <Foundation/Foundation.h>
     2 
     3 NS_ASSUME_NONNULL_BEGIN
     4 
     5 @interface SumNumbers : NSObject
     6 
     7 //在头文件中添加一个整形属性
     8 @property (nonatomic, assign) int type;
     9 //添加一个方法,传入两个参数,并返回两个整形参数的和
    10 - (int)sum:(int)number1 andNumber2:(int)number2;
    11 @end
    12 
    13 NS_ASSUME_NONNULL_END

    ->打开实现文件【SumNumbers.m】,在类的实现文件中,实现头文件中定义的方法。

     1 #import "SumNumbers.h"
     2 
     3 @implementation SumNumbers
     4 
     5 //添加头文件中定义的,获得两个整形数之和的方法
     6 - (int)sum:(int)number1 andNumber2:(int)number2
     7 {
     8     //返回两个整形参数的和
     9     return number1 + number2;
    10 }
    11 
    12 @end

    ->打开桥接头文件【DemoApp-Bridging-Header.h】

    1 //在桥接头文件中 ,引入类的头文件
    2 #import "SumNumbers.h"

    在项目导航区,打开视图控制器的代码文件【ViewController.swift】

     1 import UIKit
     2 
     3 class ViewController: UIViewController {
     4 
     5     override func viewDidLoad() {
     6         super.viewDidLoad()
     7         // Do any additional setup after loading the view, typically from a nib.
     8         
     9         //使用Swift语法初始化OC类对象
    10         let sumNumbers = SumNumbers()
    11         //使用点语法,调用对象的求和方法
    12         let result = sumNumbers.sum(1, andNumber2: 1)
    13         //在控制台打印输出求和的结果
    14         print("The result:(result)")
    15     }
    16 }

    在Swift类文件中,调用上文创建的OC类和方法。

    因为已经在桥接头文件中,引入了OC头文件,所以可以直接调用该类。

    Swift如何引用GitHub上的Object-C类库?

    请点击文章继续进行深入学习:

    [Xcode10 实际操作]七、文件与数据-(22)使用OCR光学字符识别技术识别银行卡号码

  • 相关阅读:
    ***EF中的问题(复习的同学可略过)
    课堂练习
    MVC-07 案例2
    MVC-06 安装部署
    MVC-05 Model(2)
    MVC-05 Model(1)
    MVC-04 视图(3)
    Learning Web
    MVC-04 视图(2)
    hdu 1272 并查集
  • 原文地址:https://www.cnblogs.com/strengthen/p/10085438.html
Copyright © 2011-2022 走看看