2017-02-26 12 views
1

私は2つのピッカーを持っており、ユーザは希望のintをそれらに設定してから、そのオブジェクトをコアデータに保存します。PickerをデフォルトのCoreData値に設定しますか?

後でオブジェクトを編集するときに、データをエディタにリロードします。

私はピッカーは、コアデータからint型を引き戻すと、この値に自分自身をデフォルトすることはできません問題が生じています、彼らは常に「0」

をデフォルトと希望にピッカーのデフォルトを作成する方法はありますintは編集中のオブジェクトに格納されていますか?

私が代わりに、次のデリゲートメソッドを持っている:

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

私は、オブジェクトからプロパティを取得し、ピッカーに適用する、しかし、NUMBERを使用してイムしようか?それが助け場合は、id、私はピッカーのデフォルト値にアクセスするためにOTプット・コードが必要と仮定し、ここでどこイム立ち往生しているところの代わりに... userExercise.setsまたは.repsの

setsPicker.selectedRow(inComponent: Int(userExercise.sets)) 
repsPicker.selectedRow(inComponent: Int(userExercise.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

iveは常にその関数で1を持っています。 – jwarris91

関連する問題