剛剛將我的XCode從4.6更新爲5,並隨附了iOS7 SDK。空陣列和iOS 7 SDK
我注意到,所有操作(如謂語過濾器等),我嘗試對空的NSArray執行或在模擬器上運行我的應用程序時,對於任何的iOS 5.1或iOS 7(仍然在努力的NSMutableArray引起異常(NSInvalidArgumentException)下載iOS 6.1) 我的數組被實例化(所以它們不是零),但它們有0個條目。
因此,用於在XCode 4.6中正常工作的代碼現在崩潰了,我必須添加一個額外的IF來檢查array.count == 0是否在我的應用程序中運行該代碼行之前。 (巨大的任務)
當我從AppStore下載我的應用程序(版本I與XCode 4.6一起發佈)到iOS7設備時,它工作得很好。
其他人也遇到過這種情況嗎?
不,它在iOS 7中工作正常,不需要巨大的重做。您嘗試執行哪種操作以及如何實例化陣列?你可以給幾個代碼行失敗的例子嗎?也許你發送NSMutableArray操作到NSArray或類似的東西? –
你可以顯示你看到的NSInvalidArgumentExceptions之一嗎? – bneely
最後一行崩潰。此代碼在XCode 4.6.3中可用。存儲在[defaults objectForKey:@「Wards」]的NSMutableArray不是零。 NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults]; NSData * userData = [defaults objectForKey:[NSString stringWithFormat:@「%d」,UserID]]; NSMutableDictionary * userDictionary = [[NSKeyedUnarchiver unarchiveObjectWithData:userData] mutableCopy]; NSArray * SelectedWards = [[NSArray alloc] initWithArray:[defaults objectForKey:@「Wards」]]; –