oc中调用swift数组_swift项目中oc调用swift类 - CSDN
  • Swift引用OC的宏定义

    2020-04-22 10:35:21
    在桥接文件中,#import了OC的用来宏定义的头文件,但还是引用不了想要的宏定义,后来才发现在Swift中没有了**#define**宏定义,我们可以新建一个Swift文件,用let来声明。 ...

    在桥接文件中,#import了OC的用来宏定义的头文件,但还是引用不了想要的宏定义,后来才发现在Swift中没有了**#define**宏定义,我们可以新建一个Swift文件,用let来声明。

    展开全文
  • 今天在OC工程里面直接引入了一个第三方的Swift包,结果OC文件里面死活找不到Swift对象。打开 “工程名-swift.h”文件内容似乎是空的。(正常的文件应该会有很多OC方法,对象) 后来发现工程里面并没有”工程名-...

    今天在OC工程里面直接引入了一个第三方的Swift包,结果OC文件里面死活找不到Swift对象。打开 “工程名-swift.h”文件内容似乎是空的。(正常的文件应该会有很多OC方法,对象)
    空文件
    后来发现工程里面并没有”工程名-Bridging-Header.h”文件。
    然后如果需要生成”工程名-Bridging-Header.h”文件,必须在导入Swift文件,创建一个新的Swift文件,(必须是在工程里面没有任何Swift文件时候)。当有了”工程名-Bridging-Header.h”文件以后,”工程名-swift.h”文件如下图:
    正常的"工程名-swift.h"文件

    展开全文
  • OC中使用Swift混编引入头文件

    千次阅读 2018-05-22 13:22:09
    上篇讲了Swift中使用OCSwift中使用OC,这篇讲下OC中使用Swift类。 在OC中需要用到Swift代码的文件中引入#import “XXX-Swift.h”,XXX是你的工程名称。 特别注意 1、被使用的Swift的类必须是至少继承自NSObject...

    Swift中引用OC看这篇
    在OC中需要用到Swift代码的文件中引入#import “XXX-Swift.h”,XXX是你的工程名称。

    特别注意
    1、被使用的Swift的类必须是至少继承自NSObject的,不然OC识别不了这个类。
    2、Swift中的属性和方法,要加上@objc标识,不然识别不了。

    代码如下,Swift中定义了一个类,这个类有一个类属性和一个类方法。

    class UUUU:NSObject {
        @objc static var yyy:String?
        @objc static func test()->(){
            print("XXXX")
        }
    }

    在OC需要用到的地方先引入#import “XXX-Swift.h”,然后就能用了

        UUUU *u  =[UUUU new];
        NSLog(@"%@" , UUUU.yyy);
        [UUUU test];

    Swift中使用类属性和类方法代替宏定义

    另外,在Swift的类中,可以使用只读的类属性和类方法来代替OC中的宏定义,这样定义的宏在OC中直接用,省略了在oc中再定义一次的麻烦。代码如下

    class UUUU:NSObject {
        //只读的类属性
        @objc static var name:String{
            return "jim"
        }
        //类方法
        @objc static func RGBColor(r:Float , g:Float , b:Float) -> UIColor {
            return UIColor.init(red: (CGFloat(r/255.0)), green: (CGFloat(r/255.0)), blue: (CGFloat(r/255.0)), alpha: 1.0)
        }
    }

    另一种Swift代替宏定义的方法是使用全局变量和全局函数来定义,Swift中使用全局变量和函数代替宏

    展开全文
  • 在自动生成的桥接文件导入你要掉的oc文件名就可以了, 如果没有生成桥接文件也可以自己手动创建(Header File) 第二:oc->swift Bulid Settings-->packaging-->Defines Module (设为YES) Bulid ...

    第一:swift->oc

    这个相对简单一点,

    在自动生成的桥接文件中导入你要掉的oc文件名就可以了,

    如果没有生成桥接文件也可以自己手动创建(Header File)

    第二:oc->swift

    Bulid Settings-->packaging-->Defines Module (设为YES)

    Bulid Settings-->packaging-->Product Name (这个字段 + Swift.h 导入到oc的头文件)

    代码:oc->swift(oc中使用swift) https://github.com/1365102044/oc-call-swift.git

       swift->oc(swift中使用oc) https://github.com/1365102044/swift-call-oc.git

    转载于:https://www.cnblogs.com/liuwenqiang/p/7111580.html

    展开全文
  • iOS oc 调用 swift

    2019-07-03 07:14:24
    如股票oc调用swift里面的代码 需要包含固定这个头文件 项目名称 LiqunSwiftDemo-Swift.h #ProjectName#-Swift.h 固定的写法 swift 目的 是取代oc 但是 不会完全取代 只是前端的替换 LiqunSwiftDemo-Swift 点...
  • OCSwift 混编 OC 中调用 Swift

    千次阅读 2016-02-18 16:38:07
    1、创建一个Object-C工程:SwiftInObjectC 2、创建一个Object-C的类:SwiftLan(注意选择) ...当创建完成后,Xcode提示...这样会在工程看到一个“SwiftInObjectC-Bridging-Header.h”文件。这个文件的作用可以
  • 【Swift初见】Swift数组

    万次阅读 2015-02-27 20:25:04
    在Objective-C中数组是常用的数据类型,在Swift中同样如此,在OC中有NSArray与NSMutableArray之分,但是在Swift中只有通过let和var来区分数组是否可变,Swift中的数组是类型安全的,所以在某个数据被存入到某个数组...
  • swift防止数组越界

    2019-12-15 23:14:57
    链接: swift中利用Subscripts下标脚本永久解决数组越界问题
  • Swift遍历数组的三种方式

    千次阅读 2015-07-28 07:51:45
    1. for index in 0.. { } 2. for item in array { } 3. for (index, item) in enumerate(array) { }
  • Swift代码库之数组添加append另外一个数组 数据准备 var first = ["John", "Paul"] let second = ["George", "Ringo"] 三种方法 first.append(contentsOf: second) first += second let third = first + second 往...
  • import Foundation func ave(num: Array<Double>) -> Double { var sum: Double = 0 for x in num{ sum += x } return sum / Double(num.count) } print(ave(num: [1, 2, 5])) ......
  • swift 去除数组里面重复的属性

    千次阅读 2016-09-27 11:17:21
    var array:[String] = [] let result = Array(Set(array))
  • swift中 Array没有直接remove,使用一下方法: var arr = ["4","5","6"] let wrongArr = ["4","5"] arr = arr.filter { !wrongArr.contains($0) } print(arr)
  • swift 数组转字符串(joinWithSeparator)

    千次阅读 2016-04-01 15:06:48
    就这个joinWithSeparator这个函数,找半天都没有找出来,快疯了,和OC中的componentsJoinedByString是同一个意思 let numArray = ["1","2","3"] let numString = numArray.joinWithSeparator(":") // "1:2:3
  • NSString *str = @"数组"; NSArray *array=@[@"who",@"数组",@"array",@"3"]; BOOL isbool = [array containsObject: str]; NSLog(@"i = %i",isbool); i=1;数组包含某个元素 i=0;数组不包含某个元素 ...
  • swift5.2 方法 将 [String] 转换成 String let class3_2: [String] = ["LiMing", "LiHua", "XiaoWang", "Uzi"] let studentsName = class3_2.joined(separator: "") 判断是否包含所求字符串 if studentsName....
  • 1.在ios开发数组经常用到,今天我们就来说说数组// 1.定义一个不可变数组 let arrayC = [1,2,3] // 2.定义一个可变数组 // 2.1 定义一个任意类型的数组 //var arrayM = Array<T>() var arrayM = ...
  • 注意Swift数组是结构体。用for model in array 修改model的方法行不通 应该直接对数组的值进行操作。参考下面: func handlePicModel() { guard let _ = truckPostModel.pics else { return } for i in 0..<...
  • Swift--数组

    2018-06-08 14:38:49
    创建数组 类型-字符串 “123” - 默认内容 count - 数组内容个数var array1 = [String](repeatElement("123", count: 3))var array2 = ["123","223","323"]var array3:...
  • Swift3 本地存储array(UserDefaults)

    千次阅读 2017-02-07 15:40:44
    swift3 本地存储array, UserDefaults
1 2 3 4 5 ... 20
收藏数 21,048
精华内容 8,419
关键字:

oc中调用swift数组