如何在swift项目中导入目标c头文件

vir*_*rat 4 objective-c ios swift bridging-header

在此输入图像描述

我试图在Swift项目中使用SDWebImage.我将SDWebImage库文件夹拖放到我的Swift项目中,并按名称listApp-Bridging-Header.h创建了一个桥接头.

然后我将头文件导入到我的Swift文件中; 像这样进口

    import UIImageView+WebCache.h  

  func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{

    let cell : TableViewCell = self.tableView.dequeueReusableCellWithIdentifier("Cell") as! TableViewCell


    let strTitle : NSString = arrDict[indexPath.row].valueForKey("clip_name") as! NSString

      cell.clipName.text = strTitle as String


    cell.videoImage sd_setImageWithURL=NSURL URLWithString,[NSString stringWithFormat:@"%@%@",K_Server_imageurl,[record valueForKey:@"clip_image_path"]];



        return cell

}
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误说明add ; before +如何将上面的文件正确导入我的Swift项目?

Ale*_*ano 5

这还不够,您还必须在“构建设置-Swift编译器代码生成”中添加此桥头文件名,如下图所示:

在此处输入图片说明

也不要忘记这一点(由要求SDWebImage):

在此处输入图片说明

关于下一步:

imageDownloader.downloadImageWithURL(
                        NSURL(string: urlString!),
                        options: SDWebImageDownloaderOptions.UseNSURLCache,
                        progress: nil,
                        completed: { (image, data, error, bool) -> Void in
                            if image != nil {
                                self.bannerImageView.image = image

                            }
                    })
Run Code Online (Sandbox Code Playgroud)


Fuj*_*jia 5

在桥接头中导入头文件名时,需要引用头文件名.像这样:

#import "UIImageView+WebCache.h";
Run Code Online (Sandbox Code Playgroud)

这与在objc中导入头文件的语法完全相同.

  • 您不需要在 swift 文件中导入任何内容,因为您已将它们导入到桥接头中。 (2认同)