在 Swift 中按下 UIButton 时增加进度条值

Posted

技术标签:

【中文标题】在 Swift 中按下 UIButton 时增加进度条值【英文标题】:Increase a Progress bar value on a UIButton press in Swift 【发布时间】:2015-05-13 19:55:53 【问题描述】:

好的,让我概述一下目前发生的情况。我在一个数组中有三个问题。每次按下“下一步”按钮时,它都会滑到数组中的下一个问题。我想要发生的是,当按下数组中的下一个问题时,它会移动进度条。我不需要对进度条的值做任何事情,它只是为了设计而存在。

目前,我已经设置好了代码,所以当你第一次按下 Next 按钮时,它会将进度条移动到值 0.333,但是当你再次按下它时,它不会再次移动,它只是停留在原处。

有人可以帮忙吗,因为我一直在尝试解决这个问题,但没有运气。我的代码显示了我必须使其最初移动的内容如下:

@IBOutlet var progressStatus: UIProgressView!

@IBAction func nextButton(sender: AnyObject) 

    // Displays the questions in array and displays the placeholder text in the textfield
    if currentQuestionIndex <= questions.count && currentPlaceholderIndex <= placeholder.count 

        currentQuestionIndex++
        currentPlaceholderIndex++
        progressStatus.setProgress(0.333, animated: true)
        buttonLabel.setTitle("Next", forState: UIControlState.Normal)


提前致谢!

回答我的问题的代码:

    if currentQuestionIndex == 0 

        progressStatus.setProgress(0.333, animated: true)

     else if currentQuestionIndex == 1 

        progressStatus.setProgress(0.666, animated: true)

     else 

        progressStatus.setProgress(1, animated: true)

    

【问题讨论】:

我不确定目前的修复方法是什么,因为我现在还在学习 swift,所以给你一个想法。但我认为这是您设置的值,即 0.333。使用您现在拥有的代码,您将其设置为值 0.333,而不是增加 0.333。也许您可以在问题中使用 if 循环。比如if question == 1, setProgress(0.333), if question == 2, setProgress(0.666) 这行得通,非常感谢!如果您想将其添加为答案,我会为您接受@f_qi 很高兴能帮上忙。谢谢。 【参考方案1】:

我不确定目前的解决方法是什么,因为我目前仍在学习 swift,所以请给你一个想法。但我认为这是您设置的值,即 0.333。使用您现在拥有的代码,您将其设置为值 0.333,而不是增加 0.333。也许您可以在问题中使用 if 循环。例如,如果问题 == 1,则 setProgress(0.333),如果问题 == 2,则 setProgress(0.666)

【讨论】:

这对我有用,谢谢!如果有人想看,我添加的代码在上面。

以上是关于在 Swift 中按下 UIButton 时增加进度条值的主要内容,如果未能解决你的问题,请参考以下文章

按下 UIButton 时,Swift 将文本保存到实例/全局变量

在 Swift 中按任意键更改自定义 UIButton 的 BG 颜色

如何在nib文件中按下时禁用UIButton高亮显示?

在自定义 UITableViewCell 中按下 UIButton 时如何获取 indexPathForSelectedRow

当用户在swift中按下注销按钮时如何停止更新位置

在swift5中按下特定按钮时如何使用代码呈现tabBarViewController(在情节提要中创建)?