2015-07-20 30 views
1

我的应用程序的委托获得以下当您尝试运行它:线程1:信号SIGABRT在AppDelegate中,当你运行它

主题1:信号SIGABRT

当你运行应用程序,但有时问题发生它更改为断点错误,请帮助我

有谁知道如何解决此问题。我的AppDelegate代码在下面发布;

import UIKit 
 

 
@UIApplicationMain 
 
class AppDelegate: UIResponder, UIApplicationDelegate { 
 

 
    var window: UIWindow? 
 

 

 
    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 
 
     Parse.enableLocalDatastore() 
 
     
 
     // Initialize Parse. 
 
     Parse.setApplicationId("XXXXXXXXXXXXXXXX", 
 
      clientKey: "XXXXXXXXXXXXXXXXXXXXX") 
 
     
 
     return true 
 
    } 
 
    
 
    
 

 
    func applicationWillResignActive(application: UIApplication) { 
 
     // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 
 
     // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 
 
    } 
 

 
    func applicationDidEnterBackground(application: UIApplication) { 
 
     // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
 
     // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 
 
    } 
 

 
    func applicationWillEnterForeground(application: UIApplication) { 
 
     // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 
 
    } 
 

 
    func applicationDidBecomeActive(application: UIApplication) { 
 
     // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 
 
    } 
 

 
    func applicationWillTerminate(application: UIApplication) { 
 
     // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 
 
    } 
 

 
    // MARK: - Split view 
 

 
    
 
      }

+0

当出现错误时,您是否在Xcode调试窗口中看到任何其他消息? –

+0

没有@PhillipMills – user4174219

回答

2

当我SIGABRT或EXECBREAKBOINT(或类似)错误,它几乎总是一个故事板连接,我忘了取出或连接正确。如果您重命名Outlet或Action,或将其从代码中删除,但不会从标签/按钮/无论删除连接,都会发生。

我不知道为什么它显示错误发生时的AppDelegate,但它总是如此。

委托代码没有问题,如果是这样。

更新:

好吧,你没有足够的代表又聊天,但我发现你的主要错误: 如果单击在文件浏览器顶部,上面写着“GymAmigo”蓝色图标,进入“常规”选项卡,将主界面设置为iPhone。在下拉菜单中将其更改为Main.Storyboard。那么你还有其他一些问题。我建议你将Register或Login控制器设置为初始视图控制器,在Main.Storyboard中右侧的属性检查器中,该控制器工作并在模拟器中运行。

如果将主视图(TableViewController)设置为初始值,则会由于展开nil值而导致崩溃。这是因为PFUser.currentUser()不包含用户的所有列(如果我没有错,你可以测试它是否适用于你,我没有你的类设计)。

调试时激活控制台(View/Debug Area/Activate Console)。在那里你会得到错误信息,比“SIGARBT”更容易理解。

顺便说一句,如果你现在想跳过整个注册/登录过程,Parse就可以实现一个很棒的UI。 https://parse.com/docs/ios/guide#user-interface

+0

我似乎找不到任何。有没有找到他们@mattias – user4174219

+0

有可能是一种方式,但我不知道。你可以选择黄色的东西,选择整个ViewController,然后检查连接标签。 – Mattias

+0

http://i.imgur.com/24zJoeK.png在这个例子中,顶部出口(由信息文本覆盖)是一个错误,containerView出口也被打破了(“药丸”形状的东西,而不是一个实心的圆形) )。 – Mattias