2017-02-26 150 views
1

我有2個選擇器,用戶在其上設置所需的int,然後將對象保存到核心數據。設置選擇器默認爲CoreData值?

後來,當他們想要編輯對象時,他們將其數據重新加載到編輯器中。

我有一個問題,即採摘無法從核心數據拉INT回來,默認自己這個價值,他們總是默認爲「0」

有使採摘默認到所需的方法int存儲在他們正在編輯的對象中?

我有以下的委託方法到位:

repsPicker.dataSource = self 
    repsPicker.delegate = self 
    setsPicker.dataSource = self 
    setsPicker.delegate = self 

然後我嘗試從對象採取的屬性,並將其應用到採摘,但通過數字即時通訊?代替其中id想我需要加時賽把代碼訪問採摘的默認值,這裏是IM卡...

setsPicker.selectedRow(inComponent: Int(userExercise.sets)) 
repsPicker.selectedRow(inComponent: Int(userExercise.reps)) 

userExercise.sets或.reps的數據類型是Int64類型是否有幫助?

您的時間和幫助

編輯 -

這裏非常感謝是組件覆蓋

func numberOfComponents(in pickerView: UIPickerView) -> Int { 
    if pickerView == repsPicker { 
     return 1 
    } else if pickerView == setsPicker { 
     return 1 
    } 
    return 1 
} 

回答

1

你應該使用selectRow FUNC不selectedRow

func selectRow(_ row: Int, 
    inComponent component: Int, 
     animated animated: Bool) 

如此,應該是

setsPicker.selectRow(Int(userExercise.sets), inComponent :0,animated:false) 
repsPicker.selectRow(Int(userExercise.reps), inComponent :0,animated:false) 
+0

謝謝,那麼在這種情況下YourComponentId會是什麼? – jwarris91

+0

它取決於你想在選擇器中改變哪個組件,檢查這個覆蓋'numberOfComponentsInPickerView' –

+0

我一直只有1在該func中,將它添加到OP作爲參考,不知道它是否正確! – jwarris91