0
這個例子在字典中搜索字符串包含一個待辦事項應用方面,我有以下的代碼,以待完成添加到列表:陣列中的迅速
let userDefaults:NSUserDefaults = NSUserDefaults.standardUserDefaults()
var itemList:NSMutableArray = userDefaults.objectForKey("itemList") as NSMutableArray
let dataSet:NSMutableDictionary = NSMutableDictionary()
dataSet.setObject(titleTextField.text, forKey: "itemTitle")
dataSet.setObject(notesTextField.text, forKey: "itemNotes")
if ((itemList) != nil) {
let newList:NSMutableArray = NSMutableArray(
for dict:AnyObject in itemList{
newList.addObject(dict as! NSDictionary)
}
userDefaults.removeObjectForKey("itemList")
newList.addObject(dataSet)
userDefaults.setObject(newList, forKey: "itemList")
}
else{
userDefaults.removeObjectForKey("itemList")
itemList = NSMutableArray(
itemList.addObject(dataSet)
userDefaults.setObject(itemList, forKey: "itemList")
}
userDefaults.synchronize()
self.navigationController.popToRootViewControllerAnimated(true)
我怎麼會在字典中查找/ array查找多個itemTitle
,這樣如果用戶創建標題兩次,它會向它們發送一條錯誤消息,通知它們他們創建了標題兩次,並且在添加新的待辦事項之前必須更改它?
兩條建議:Todo's很容易用數據庫圖表示,因此CoreData是一個更好/更簡單的解決方案。將代碼中的所有'!'替換爲適當的向下轉換或可選的綁定。 –
謝謝,我明白,使用CoreData更容易,但我仍然想知道答案,而不必使用CoreData,謝謝 – user2976917
更新問題中的代碼,使其沒有更多問題的解壓縮/ downcasts。除此之外沒有什麼意義。 –