简体   繁体   English

如何重新加载选择器视图?

[英]How to reload a picker view?

@IBAction func nextTurn(sender: AnyObject) {
    if numberOfTurn < (playersForPicker.count-1) {
    numberOfTurn++
    }else{
        numberOfTurn = 0
    }
    titleForTwo.title = playersForPicker[numberOfTurn]
    var lostPlayer = playersForPicker[numberOfTurn]

    titleForTwo.title = playersForPicker[numberOfTurn]

    playersForPicker.removeAtIndex(numberOfTurn)

    playerPicker.reloadAllComponents()

         playersForPicker.insert(lostPlayer, atIndex: numberOfTurn)
    startButton.setTitle("Next Turn", forState: UIControlState())
}

The playerPicker doesn't reload or change, So i need help on how to refresh or reload a picker view when clicking a button. playerPicker不会重新加载或更改,因此我需要有关单击按钮时如何刷新或重新加载选择器视图的帮助。

Why should it change? 为什么要改变? You are removing playersForPicker[numberOfTurn], but you set lostPlayer to that same value, then add it back to the same place in the array. 您正在删除playersForPicker [numberOfTurn],但是将lostPlayer设置为相同的值,然后将其添加回数组中的相同位置。 The array hasn't changed, so neither will your picker. 数组未更改,因此选择器也不会更改。 You are properly reloading your picker view. 您正在正确地重新加载选择器视图。 If you comment out the line where you insert lostPlayer, you should see that item disappear from the picker. 如果将插入lostPlayer的行注释掉,则应该看到该项目从选择器中消失了。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM