ios - 让用户只按一次按钮

标签 ios swift button uibutton

我想让用户用一个按钮给 +1 或用另一个按钮给 -1 分,但他们应该只能按一次这些按钮中的一个...

我使用这段代码,但用户仍然可以多次点击按钮...

var job: Job! {
    didSet {
        jobLabel.text = job.text
        likeButton.setTitle("👍 \(job.numberOfLikes)", for: [])
        dislikeButton.setTitle("👎 \(job.numberOfDislikes)", for: [])
    }
}

@IBAction func dislikeDidTouch(_ sender: AnyObject)
{
    (dislikeDidTouch).isEnabled = false
    job.dislike()
    dislikeButton.setTitle("👎 \(job.numberOfDislikes)", for: [])
    dislikeButton.setTitleColor(dislikeColor, for: [])    }

@IBAction func likeDidTouch(_ sender: AnyObject)
{
    sender.userInteractionEnabled=YES;
    job.like()
    likeButton.setTitle("👍 \(job.numberOfLikes)", for: [])
    likeButton.setTitleColor(likeColor, for: [])
}

最佳答案

因为发送者是一个 UIButton ,所以最好像这样构造函数

@IBAction func dislikeDidTouch(_ sender: UIButton)
@IBAction func likeDidTouch(_ sender: UIButton)

每个里面都有

sender.isEnabled = false

关于ios - 让用户只按一次按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51679558/

相关文章:

c# - 单击按钮时下拉组合框

iOS - 文件 "XXX-XXX..."无法打开,因为没有这样的文件

ios - 如何从 Compact :Regular to Any:Any 传输接口(interface)

ios - 快速返回值 URLSession.shared.dataTask

ios - 可选值的 NSCoder decodeDouble

Python:如何让按钮在按下时卡住? - Tkinter

ios - 为什么我收到错误 EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)

ios - 如何从单元格中的按钮调用外部函数

objective-c - 如何从 Objective-C 调用具有隐藏变量名称(参数前的 _)或内部 + 外部(例如 foo(with bar :))

javascript - 如何使用带有多个按钮的 javascript 更改按钮颜色?