私は素早く新しいです。私は別のクラスの名前の配列を使用してpickerviewを再作成しようとしています。私はこのクラスを持っています。メモをつくるノートと名前/タイトルがあります。その名前/タイトルにアクセスしてピッカービューに入れようとしています。他のviewControllerからの情報へのアクセス
import UIKit
var allNotes: [Note] = []
var currentNoteindex: Int = -1
var noteTable: UITableView?
let kAllNotes:String = "notes"
class Note: NSObject
{
var date:String
var note:String
var name:String
override init()
{
date = NSDate().description
name = ""
note = ""
}
func dictionary() -> NSDictionary
{
return ["note": note, "date": date, "name": name]
}
私は2つの異なるピッカービューを持っていますが、1つは作品の名前で動作しません。
override func viewDidLoad()
{
super.viewDidLoad()
fileNamePicker.dataSource = self
fileNamePicker.delegate = self
gradePicker.dataSource = self
gradePicker.delegate = self
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int
{
if pickerView == gradePicker
{
return grades.count
}
else
{
return allNotes.count
}
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String?
{
if pickerView == gradePicker
{
return grades[row]
}
else
{
//This is where the Problem is, but I don't know how to fix it.
let nameFiles = allNotes[currentNoteindex].name
return nameFiles[row]
}
}
func numberOfComponents(in pickerView: UIPickerView) -> Int
{
return 1
}
'let nameFiles = allNotes [currentNoteindex] .name'はすでに' String'です。どうしてあなたはvarを返さないのですか? – Ryan
ええ、私はそれを試みましたが、それも動作しません。 –
「うまくいかない」とはどういう意味ですか?ここに詳細を追加できますか? – Ryan