我有一個表視圖,具有多個行,具體取決於用戶創建的條目數。 讓我們假設用戶創建了2個條目,因此我們有2行。UISwitch一次更改兩個值
現在挖掘將各行創建了2行2個UISwitches 另一個表的子視圖(就像一棵樹。2行,每行擴展到2個新行,每行有UISwitch)
所有UISwitch狀態時更新了字典詞典。 例如下面
[0:[0:否,1:真],1:[0:否,1:假]]
行0 - >第一開關:OFF,第二:ON
行1 - >第一開關:OFF,第二:OFF
場景:
所有UISwitches是ON因此,[0:[0:真,1:真],1:[0:真,1 :true]]
第0行的第一個UISwitch off-> [0 :[0:假,1:真],1:[0:真,1:真]]
第一行的第二個UISwitch斷開 - > [0:[0:false,1:true] :[0:false,1:false]]
它將每個關閉按照預期方式關閉,但也包括所有其他(粗體),其中在步驟一中爲不同的UI開關行關閉OFF。它似乎記得前面的步驟,但弄亂了行。
代碼:
//smallDictionary is a dictionary
//bigDictionary is a dictionary of dictionaries
// smallDictionary is appended to bigDictionary
// row is a variable updated everytime some row is tapped.
@IBAction func switchChanged(sender: UISwitch) {
if sender.on == true {
smallDictionary[sender.tag]! = true
bigDictionary[row]! = globalswitchSaveDict
}
else {
smallDictionary[sender.tag]! = false
bigDictionary[row]! = globalswitchSaveDict
}
}