gpt4 book ai didi

ios - UIPickerView 正在选择错误的行-Swift

转载 作者:可可西里 更新时间:2023-11-01 01:05:51 25 4
gpt4 key购买 nike

所以我的 UIPickerView 没有按照我想要的方式工作。它大约有 3/4 的时间可以正常工作,但另外 1/4 的时间没有。

 func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}

func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return listsArray.count

}

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView
{
activeQuizPlace = row
var pickerLabel = UILabel()
pickerLabel.textColor = UIColor.whiteColor()
pickerLabel.text = listsArray[row]
pickerLabel.font = UIFont(name: "Georgia", size: 22)
pickerLabel.textAlignment = NSTextAlignment.Center
return pickerLabel
}

listArray 包含 5 个项目(它们是字符串)。第 0-2 行在 100% 的时间内正常工作。 However when row 3 is selected it occasionally says that row 1 was, and when row 4 is selected it sometimes says that row 2 was.我认为问题与我控制 UIPickerView 的最后一个函数有关。我只是从该网站复制了该代码,作为更改文本颜色和字体的一种方式。在我使用这个功能之前,我从来没有遇到过问题,或者至少从来没有注意到一个问题。旁注:我使用的是 Xcode 6.3.2

我需要一种方法让选择器 View 正常工作,并且能够更改其字体和颜色。我很乐意为此提供帮助我一直在网上寻找答案 2 小时,但无法弄清楚我做错了什么,提前致谢!

最佳答案

我认为您需要从您显示的代码中删除 activeQuizPlace = row 行,然后在下面添加此函数。

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
activeQuizPlace = row
}

您使用的函数不是使用用户选择的索引调用的,而是使用系统绘制 View 所需的索引调用的。

建议的功能应该是您想要的(希望如此)。

关于ios - UIPickerView 正在选择错误的行-Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30559365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com