我目前正在尝试编辑一个故事板文件,在Xcode 6中(不确定这是否是Xcode错误,或者我刚刚做了什么),当我去视图时我想编辑这就是场景告诉我:

这是我意外启用的吗?或者如果是Xcode问题.在我为项目启用源代码管理之后,它首先执行了此操作.
任何人都知道如何解决?
我刚刚安装了XCode6 Beta-7,现在我的一个PrepareForSegue方法看到了一个访问异常 - (当Modal Segue即将解除时调用)
有问题的代码如下所示:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
if (segue.identifier == "MY_IDENTIFIER") { //EXC_BAD_ACCESS (code=1, address=0x0)
//Never gets here...
}
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试将segue参数设置为可选,但就Swift而言,segue不是零,所以即使使用如下的检查,我也有同样的失败......
override func prepareForSegue(segue: UIStoryboardSegue?, sender: AnyObject!) {
if (segue != nil)
if (segue!.identifier == "MY_IDENTIFIER") { //EXC_BAD_ACCESS (code=1, address=0x0)
//Never gets here...
}
}
}
Run Code Online (Sandbox Code Playgroud)
应用程序中的所有其他segue似乎工作正常,但这一个是失败的 - 并且它似乎仅在发布展开的情况下发生.还有其他人遇到过吗?
编辑/解决方法
一个简单的解决方法是避免使用unwindSegue方法并简单地调用dismissViewControllerAnimated,但我仍然想知道为什么unwindSegue方法在这个实例中失败...
非常感谢!
有人可以解释这个错误,为什么这适用于关闭?
如果你在'B'类中将'Test'更改为'A',那么在这两种情况下一切都有效.
beta 7
protocol Test {
func someFunc() -> String
var someClosure: () -> Int { get }
}
class A: Test {
func someFunc() -> String {
return "A String"
}
var someClosure: () -> Int {
return {
return 2
}
}
}
class B {
let a: Test
let aString: () -> String
let aInt: () -> Int
init(a: Test){
self.a = a
aString = a.someFunc // Error: Partial application of protocol method is not allowed …Run Code Online (Sandbox Code Playgroud) 在我通过CocoaPods向我的测试项目添加新依赖项之前,我已经添加了一个C头文件('wahoo.h'),并通过桥接头文件"wahoo-Bridging-Header.h"将其暴露给swift代码.测试应用程序可以编译和运行没有任何问题.
然后我在我的项目中添加了一个新的依赖项"STHTTPRequest".你可以在这里看到文件列表:

如果我添加了这一行:
#include <STHTTPRequest/STHTTPRequest.h>
它将无法使用此错误消息进行编译:

我尝试了一些替代方案,但都失败了:
#include "STHTTPRequest.h"
#import "STHTTPRequest.h"
显然,我不能在项目中拥有多个桥接头文件.我该如何解决这个导入问题?
编辑我可以解决问题,如果我将头文件复制Pods到SO1并添加#include "SO1/STHTTPRequest.h"到桥接头.这不是一个理想的解决方案.
如何自动复制头文件?或者,如何使头文件Pods可访问SO1?
错误ITMS-9000:"签名丢失或无效.捆绑路径'Payload/My_app_name.app/GooglePlus.bundle'中的捆绑'com.google.GPPSignIn3PResources'未使用Apple提交证书签名."
我之前能够提交相同的构建,只是UI相关的一些更改,并尝试重新提交构建并获得此错误.有没有解决办法?
这是我收到错误的代码:
for (key, value) in info {
let fieldValue: AnyObject? = value
if (!fieldValue || fieldValue?.length == 0) { // this line gives the error
informationComplete = false;
}
}
Run Code Online (Sandbox Code Playgroud)
这就是XCode建议我使用它导致另一个错误:
for (key, value) in info {
let fieldValue: AnyObject? = value
if ((!fieldValue || fieldValue?.length == 0) != nil) { //bool not convertible to string
informationComplete = false;
}
}
Run Code Online (Sandbox Code Playgroud)
感谢帮助.
谢谢你的时间
我有一个自定义navigationBar:
class Name_UINavigationBar: UINavigationBar {
// code
}
Run Code Online (Sandbox Code Playgroud)
我想以编程方式将其设置为我的导航控制器.所以我尝试过:
var navController : UINavigationController = UINavigationController(
navigationBarClass: object_getClass(Name_UINavigationBar),
toolbarClass: nil)
// code
Run Code Online (Sandbox Code Playgroud)
但它崩溃说:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: 'MyProject.Name_UINavigationBar is not a subclass of UINavigationBar'
Run Code Online (Sandbox Code Playgroud) 我按一下按钮就会显示一个活动指示器视图,但它不想显示.如果我没有将它设置为隐藏,它会显示,当我尝试隐藏它时,它会隐藏.但如果它被隐藏,它将不再显示.
这是代码:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
loading.hidden = true
}
@IBAction func submit() {
loading.hidden = false
loading.startAnimating()
if chosenCategory == "" || txtName.text == "" || txtEmail.text == "" {
loading.stopAnimating()
loading.hidden = true
} else {
println("animation")
Run Code Online (Sandbox Code Playgroud)
无论如何,停止动画都有效,它可以隐藏,但无论我做什么,它似乎都跳过了loading.hidden = false直接打印消息.
可能会发生什么?
以下这段代码在Xcode 6 beta 5中运行良好:
func fitText(){
let size = (self.text as NSString).sizeWithAttributes([NSFontAttributeName:self.font]) //Errors here
self.frame.size = size
}
Run Code Online (Sandbox Code Playgroud)
现在它在第二行给出了以下错误:
'UIFont'不是'NSDictionary'的子类型
无法将表达式的类型'$ T6'转换为'UIFont'类型
当我把它拆分成
let dict = [NSFontAttributeName:self.font]
let size = (self.text as NSString).sizeWithAttributes(dict) //Even stranger errors go here
Run Code Online (Sandbox Code Playgroud)
xcode说:
'UIFont'不是'NSDictionary'的子类型
无法将表达式的类型'[NSString:UIFont]'转换为'CGSize'类型
在测试版7或6中,swift改变了什么,它打破了代码?
目前我正在使用Swift on Xcode 6 beta 7为iPad(iOS7)构建一个WebRTC应用程序.我一直收到这些错误.我添加了错误的库吗?它无法找到它们吗?
以下是它打印的错误:
Undefined symbols for architecture armv7:
"std::string::_Rep::_S_empty_rep_storage", referenced from:
+[RTCMediaConstraints constraintsFromArray:] in libjingle_peerconnection_objc.a(RTCMediaConstraints.o)
std::vector<webrtc::MediaConstraintsInterface::Constraint, std::allocator<webrtc::MediaConstraintsInterface::Constraint> >::_M_insert_aux(__gnu_cxx::__normal_iterator<webrtc::MediaConstraintsInterface::Constraint*, std::vector<webrtc::MediaConstraintsInterface::Constraint, std::allocator<webrtc::MediaConstraintsInterface::Constraint> > >, webrtc::MediaConstraintsInterface::Constraint const&) in libjingle_peerconnection_objc.a(RTCMediaConstraints.o)
"std::string::assign(std::string const&)", referenced from:
std::vector<webrtc::MediaConstraintsInterface::Constraint, std::allocator<webrtc::MediaConstraintsInterface::Constraint> >::_M_insert_aux(__gnu_cxx::__normal_iterator<webrtc::MediaConstraintsInterface::Constraint*, std::vector<webrtc::MediaConstraintsInterface::Constraint, std::allocator<webrtc::MediaConstraintsInterface::Constraint> > >, webrtc::MediaConstraintsInterface::Constraint const&) in libjingle_peerconnection_objc.a(RTCMediaConstraints.o)
webrtc::MediaConstraintsInterface::Constraint* std::__copy_backward<false, std::random_access_iterator_tag>::__copy_b<webrtc::MediaConstraintsInterface::Constraint*, webrtc::MediaConstraintsInterface::Constraint*>(webrtc::MediaConstraintsInterface::Constraint*, webrtc::MediaConstraintsInterface::Constraint*, webrtc::MediaConstraintsInterface::Constraint*) in libjingle_peerconnection_objc.a(RTCMediaConstraints.o)
webrtc::MediaConstraintsInterface::Constraint* std::__copy<false, std::random_access_iterator_tag>::copy<webrtc::MediaConstraintsInterface::Constraint*, webrtc::MediaConstraintsInterface::Constraint*>(webrtc::MediaConstraintsInterface::Constraint*, webrtc::MediaConstraintsInterface::Constraint*, webrtc::MediaConstraintsInterface::Constraint*) in libjingle_peerconnection_objc.a(RTCMediaConstraints.o)
webrtc::MediaConstraintsInterface::Constraint* std::__copy<false, std::random_access_iterator_tag>::copy<webrtc::MediaConstraintsInterface::Constraint const*, webrtc::MediaConstraintsInterface::Constraint*>(webrtc::MediaConstraintsInterface::Constraint const*, webrtc::MediaConstraintsInterface::Constraint const*, webrtc::MediaConstraintsInterface::Constraint*) in libjingle_peerconnection_objc.a(RTCMediaConstraints.o)
"std::string::_Rep::_M_destroy(std::allocator<char> const&)", referenced from:
+[RTCMediaConstraints constraintsFromArray:] in libjingle_peerconnection_objc.a(RTCMediaConstraints.o) …Run Code Online (Sandbox Code Playgroud)