我只是想让你知道我正在处理的Xcode版本是7.1.1。说到这一点,我有三个Pickerviews,如下图所示。主选秀视图,左选择视图和右选择视图。
主选择器视图的数组有一组名称,每个名称都有一组单位,左右选择器应该具有相同的数据。我已经制作了一本字典,以便将这些单元组同步到它所属的位置,但我无法做到。
我将主Picker标记为1,左侧Picker标记为2,右侧标记标记为3.此外,我将所有选择标记为" dataSource" &安培; "代表"
http://s12.postimg.org/fj72kg29p/main_View.png
主要目标是:
我已经做了我所做的但是我收到了以下错误:
http://s1.postimg.org/523f3smwf/Screen_Shot_2015_11_27_at_12_39_20_AM.png
这是我的代码:
object 2
答案 0 :(得分:0)
同样在func pickerView(pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString?
正确处理所有选择器的归属文本,否则您的代码将崩溃。您只需为attributedTitle
定义mainPicker
即可。对其他人也这样做,如下所示。根据您的需要进行更改。
func pickerView(pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? {
let titleData : String?
if(pickerView.tag == mainPicker.tag){
titleData = mainPickerData[row] as? String;
}
else{
let currentSelectedIndex = mainPicker.selectedRowInComponent(0)
leftRightPickerData = (dataDict.objectForKey(mainPickerData[currentSelectedIndex] as! String) as! NSArray)
titleData = leftRightPickerData[row] as? String;
}
let myTitle = NSAttributedString(string: titleData!, attributes: [NSFontAttributeName:UIFont(name: "Georgia", size: 15.0)!,NSForegroundColorAttributeName:UIColor.blueColor()])
return myTitle;
}