相关疑难解决方法(0)

@import vs #import - iOS 7

我正在玩一些新的iOS 7功能,并使用WWDC视频"在iOS上实现引导UI"中讨论的一些图像效果.为了在会话的源代码中产生模糊效果,UIImage通过导入UIKit的类别扩展,如下所示:

@import UIKit;
Run Code Online (Sandbox Code Playgroud)

我想我在另一个会话视频中看到了一些相关内容,但我找不到它.我正在寻找有关何时使用此信息的任何背景信息.它只能用于Apple框架吗?使用此编译器指令的好处是否应该返回并更新旧代码?

import objective-c ios ios7

428
推荐指数
3
解决办法
12万
查看次数

不能在Objective-C中使用Swift类

我尝试Swift在我的app中集成代码.我的应用程序是写入的Objective-C,我添加了一个Swift类.我做了这里描述的所有事情.但我的问题是Xcode没有创建-Swift.h文件,只有桥接头.所以我创造了它,但它实际上是空的.我可以在Swift中使用我所有的ObjC类,但我不能这样做.我标记了我的快速课程,@objc但没有帮助.我现在能做什么?

编辑:Apple说:"当您将Swift代码导入Objective-C时,您依靠Xcode-generated头文件将这些文件暴露给Objective-C.[...]此标题的名称是您的产品模块名称,然后添加" -Swift.h"."

现在,当我想导入该文件时,它会出错:

    //MainMenu.m

    #import "myProjectModule-Swift.h" //Error: 'myProjectModule-Swift.h' file not found

    @implementation MainMenu
Run Code Online (Sandbox Code Playgroud)

这是我的FBManager.swift文件:

@objc class FBManager: NSObject {

    var descr = "FBManager class"

    init() {
        super.init()
    }

    func desc(){
        println(descr)
    }

    func getSharedGameState() -> GameState{
        return GameState.sharedGameState() //OK! GameState is written in Objective-C and no error here
    }
}
Run Code Online (Sandbox Code Playgroud)

objective-c ios swift

251
推荐指数
12
解决办法
15万
查看次数

不是在Xcode 6中创建的Swift到Objective-C头

我最近一直在努力将Swift添加到现有项目中,以现实世界的方式进行尝试.

在向项目添加Swift源文件后,我没有遇到"桥接标题"的问题,即Objective-C到Swift.

但是*-Swift.h应该公开Swift类标题@objc或ObjC类的子类的头文件无处可寻:-(

在我的主应用程序代码(仍然是Objective-C)中,我没有看到任何关于如何使用Swift编写的新子类的使用的具体说明.

我是主要开发人员的应用程序拥有相当大的代码库(70.000行),因此一次性转换它是不可能的.

xcode objective-c swift

239
推荐指数
17
解决办法
9万
查看次数

$ {EXECUTABLE_NAME}和$ {PRODUCT_NAME}的定义位置

我在哪里可以找到有关如何修改这些信息的信息

  • ${EXECUTABLE_NAME}
  • ${PRODUCT_NAME}

这些仅显示在.plist文件中,但实际值在哪里.

如果我们可以直接修改.plist中我们想要的东西,为什么我们需要这些呢.

我是新的,这就是为什么我有问题理解这些,我也查看了苹果信息属性列表的关键参考,但没有找到这些$ {}值.

iphone xcode objective-c plist ios

104
推荐指数
2
解决办法
5万
查看次数

将Objective C框架连接到Swift iOS 8应用程序(Parse框架)

我正在尝试使用带有Swift编程语言的Objective C框架进行iOS 8开发.这是导入的具体情况,但一般问题是:

如何将Objective C框架导入swift并获得导入识别?

我正在尝试使用iOS 8和Xcode 6测试版将Parse框架集成到一个快速的应用程序中.

以下是Objective C中Parse框架集成的技术:

https://www.parse.com/apps/quickstart#social/mobile/ios/native/existing

我已经将Parse框架作为压缩存档下载,解压缩并将其导入Xcode 6而没有任何问题.在我的应用程序中,它显示为名为Parse.framework的格式正确的框架.

我目前的思考过程是修改AppDelegate.swift项目根目录下的文件.这是没有修改的当前文件(在快速项目创建时由Xcode自动生成):

https://gist.github.com/fconcklin/e8ef7d8b056105a04161

我试图通过添加行import Parse下面的行来导入解析import UIKit.但是,Xcode发出警告,表示没有找到这样的模块,并且构建失败.

我还尝试创建一个${PROJ_NAME_HERE}-Bridging-Header.h包含Parse使用的Objective C导入的文件import <Parse/Parse.h>.这条线不会引发错误,但似乎最终没有任何区别.

提前致谢.如果您需要更多信息,请告诉我.

xcode objective-c ios parse-platform swift

49
推荐指数
3
解决办法
4万
查看次数

如何获取捆绑ID?

我正在努力让facebook API适用于iOS,FB注册页面需要项目的Bundle ID.我怎样才能获得这些信息?我读了一些关于在运行时获取它的内容,但有没有办法让Xcode告诉我这些信息,或者它是否存在于某个地方.我没有使用默认的包ID,我记得在创建项目时设置它.

nsbundle ios

36
推荐指数
5
解决办法
6万
查看次数

没有找到目标的伞头,将不会生成模块图

当我尝试在Xcode 6.3中构建CKCountdownButton作为框架时,它会抱怨

警告:找不到目标'CKCountdownButton'的伞头,将不会生成模块图

然后,当我在其他项目中导入此框架时,它失败了没有这样的模块'CKCountdownButton'

xcode ios

36
推荐指数
4
解决办法
2万
查看次数

静态库和Swift

所以我正在研究Swift中的iOS项目,我想创建一个包含一些有用内容的静态库.

我的问题是当我尝试在Xcode(版本6.3)中构建我的lib时,我有一个"Build Failed",然后是: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: unknown option character 'X' in: -Xlinker

我从来没有见过这个,这不是我的第一个静态库.所以我在想我可能与我只使用Swift类这一事实有关.

你们有什么感想 ?先感谢您.

iphone xcode ios swift ios8.3

23
推荐指数
4
解决办法
3万
查看次数

将swift框架导入Objective-c项目

我将swift框架导入Objective-c项目,如下所示:

@import MyFramework;
Run Code Online (Sandbox Code Playgroud)

问题是只有一些类被我导入框架的类识别.

被认可的班级:

public class RecognizedClass:UIViewController, WKNavigationDelegate, WKScriptMessageHandle 
 { ... } 
Run Code Online (Sandbox Code Playgroud)

这个课不是:

public class VeediUtils
{ ... } 
Run Code Online (Sandbox Code Playgroud)

它们都是公共的,为什么第一个在工作区被识别而另一个没有?

另外我在头文件MyFramework-Swift.h中看到一个类

@interface RecognizedClass : UIViewController <WKNavigationDelegate, WKScriptMessageHandler>
Run Code Online (Sandbox Code Playgroud)

出现而另一个不

这是为什么?

还指出,当我将swift框架导入swift项目时,同样的过程也能正常工作

objective-c ios ios-frameworks swift

19
推荐指数
2
解决办法
3万
查看次数

iOS更改目标名称

在iOS项目中,我更改了目标名称.但是对于构建,在左上角(在停止按钮旁边),它仍然只显示旧目标名称...我应该更改什么,以便旧项目名称将完全从XCode中消失?

xcode ios

17
推荐指数
5
解决办法
2万
查看次数