如何在swift项目中使用objective-c类cocoapods

时间:2015-09-08 04:34:49

标签: ios objective-c swift cocoapods objective-c-category

我知道如何在swift项目中使用objective-c项目作为pod。但我不知道如何使用Objective-c类别。我可以D& D使用类别项目,但是我想以cocoapod方式使用它以便于更新。

我的iOS-Bridging-Header.h

#import <FIR/FIR.h>
#import <NSDate-Escort/NSDate+Escort.h>

当我导入第二个文件时,Xcode说:

'NSDate-Escort/NSDate-Escort.h' file not found

我的Podfile

platform :ios, '8.0'
use_frameworks!

target 'TimeMachine' do
  pod 'FIR.im', '~> 1.3.1'
  pod 'MGSwipeTableCell', '~> 1.5.1'
  pod 'XCGLogger', '~> 2.3'
  pod 'NSDate-Escort', '~>1.5.1'
end

target 'TimeMachineTests' do

end

我执行了pod安装,并且正确安装了pod。

3 个答案:

答案 0 :(得分:3)

尝试使用:

files_to_check = glob.glob(os.path.join(path, '*.tar.gz')) most_recent_file = max(files_to_check, key=os.path.getmtime) 在podfile中 和 swift文件中的use_frameworks!

答案 1 :(得分:1)

添加&#34; use_frameworks!&#34;您作为依赖项包含的Objective-C代码被打包为框架,而不是静态库。

两个选项:

  1. 不要使用桥接头文件。将import XCGLogger添加到您需要的每个swift文件中。

  2. 更改桥接标头导入

    #import <FIR/FIR.h>

    #import <FIR.h>

答案 2 :(得分:1)

我正在使用use_frameworks!使用Xcode 8,今天注意到对于某些pod,你必须使用_而不是 - 。

这不会起作用。 Xcode说了

  

&#34;一行上的连续陈述必须由以下部分分隔;&#34;

import UIView-FDCollapsibleConstraints 

然后在查看我的pods / products文件夹后,我注意到它被称为UIView_FDCollapsibleConstraints

这对我有用

 import UIView_FDCollapsibleConstraints 

希望这可以帮助某人,我不确定这个cocoapods或使用它的pod是否会导致这种情况。