UIPickerView 上显示问号,而不是 Xcode 10 上的 Realm 数据
Posted
技术标签:
【中文标题】UIPickerView 上显示问号,而不是 Xcode 10 上的 Realm 数据【英文标题】:Question mark displayed on UIPickerView instead of Realm data on Xcode 10 【发布时间】:2018-09-29 16:10:06 【问题描述】:我正在学习从 Realm 数据库中填充 UIPickerView。
问题是 UIPickerView 显示“?”而不是数据。
这是我的代码:
import UIKit
import RealmSwift
class AjouterEmpruntViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource
@IBOutlet weak var PickerViewListeAmis: UIPickerView!
/* Initialisation de Realm */
let realm = try! Realm()
var data:Results<Ami>!
var listOfFriends:[Ami] = []
override func viewDidLoad()
super.viewDidLoad()
/* Definition des sources du PickerView */
self.PickerViewListeAmis.dataSource = self
self.PickerViewListeAmis.delegate = self
/* Constitution de la liste de pseudos d'amis pour alimenter le PickerView */
self.data = realm.objects(Ami.self)
self.listOfFriends = Array(self.data)
@IBAction func btnSaveEmprunt(_ sender: UIBarButtonItem)
self.dismiss(animated: true)
@IBAction func btnCancelEmprunt(_ sender: UIBarButtonItem)
self.dismiss(animated: true)
func numberOfComponents(in pickerView: UIPickerView) -> Int
return 1
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int
return listOfFriends.count
private func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String?
print("pseudo = "+listOfFriends[row].pseudo)
return listOfFriends[row].pseudo
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
print("selected Ami is "+listOfFriends[row].pseudo)
我按照这个教程http://sourcefreeze.com/ios-uipickerview-example-using-swift/
你能帮我解决这个问题吗?
结果如下: 问题?而不是数据
【问题讨论】:
是否显示?像“项目?”这样的数据还是只有? 谢谢 :) ...它只显示“?” 【参考方案1】:titleForRow
的方法签名错误,所以它没有被调用。
必须是:
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String?
不是:
private func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String?
删除private
并添加缺少的_
。
【讨论】:
超级!非常感谢你。我今天花了 8 小时来解决这个问题 :)以上是关于UIPickerView 上显示问号,而不是 Xcode 10 上的 Realm 数据的主要内容,如果未能解决你的问题,请参考以下文章
UITextField inputview 弹出 UIPickerView 在pickerview中显示问号