簡體   English   中英

在Xcode項目模板中定位iOS 6時,UIApplicationMain中出現錯誤

[英]Error in UIApplicationMain when targeting iOS 6 in Xcode project template

我是Xcode開發的新手,所以很抱歉這是一個簡單的解決方法。

重現此問題的步驟是

  • 基於MasterDetail模板在Xcode中創建一個新項目
  • 運行這個項目就可以了
  • 在部署目標中,在彈出菜單中將“ 7.0”更改為“ 6.0”
  • 運行此項目將引發錯誤:

    *由於未捕獲的異常'NSInvalidArgumentException'而終止應用程序,原因:'-[XYZMasterViewController setPreferredContentSize:]:無法識別的選擇器發送到實例0x1d08fd10'

我懷疑該問題是由於與iOS 6和7之間的main.m相關或在其中的某些語法或配置更改所致-

@autoreleasepool {
     return UIApplicationMain(argc, argv, nil, NSStringFromClass([XYZAppDelegate class]));
}

提前致謝

問題是, setPreferredContentSize 僅在IOS 7.0中可用 您可以在代碼中搜索preferredContentSize ,請記住,可能正在使用點表示法setPreferredContentSize

找到setPreferredContentSize您應該執行以下操作:

    if ([controller respondsToSelector:@selector(setPreferredContentSize:)])
     {
         // iOS 7
         controller.preferredContentSize = ...;
     }
     else
     {
         // iOS < 7
         controller.contentSizeForViewInPopover = ...;
     }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM