【问题标题】:change UIButton text with another UIButton text (swift)用另一个 UIButton 文本更改 UIButton 文本(swift)
【发布时间】:2016-03-07 05:31:29
【问题描述】:

我的问题是如何将UIButton 的标题更改为另一个UIButton 的标题。 我有三个按钮,我想在单击按钮 2 时相互交换按钮 1 和 3 的标题。

看看这张图你就明白了。

我该怎么做?

【问题讨论】:

  • 你能出示你的代码吗
  • 为什么不直接声明要存储的变量,然后修改文本呢?
  • @EICaptain NO 我不知道该怎么做

标签: ios iphone xcode swift uibutton


【解决方案1】:

我觉得很简单。

只需将按钮中的一个文本保留在字符串中,然后通过单击按钮来替换它。

let title1 = btn1.titleLabel!.text

btn1.setTitle(btn2.titleLabel!.text, forState: UIControlState.Normal)
btn2.setTitle(title1, forState: UIControlState.Normal)

学习并应用代码! 希望对你有帮助。

【讨论】:

  • 如果我再点击一次按钮 2 会怎样?什么都不会发生
  • @J.S.O 您必须将切换按钮视为第三个按钮。你必须理解代码。
  • 对不起,我不明白
  • @J.S.O 检查图像。代码工作正常。只需将其添加到第三个按钮点击
  • @J.S.O 太好了。欢迎随时:)
【解决方案2】:

试试这个

let title1 = button1.currentTitle!
button1.setTitle(button3.currentTitle!, forState: .Normal)
button3.setTitle(title1, forState: .Normal)

【讨论】:

  • 如果我再点击一次按钮 2 会怎样?什么都不会发生
  • 它仍然会切换标题。
【解决方案3】:

尝试使用下面的 sn-p,您将在单击 button2 时更改/切换 button1 和 button3 的标题。(无论它们有什么标题)

@IBAction func btn2Tapped(btn2 : UIButton)
{
    var strBtnTittle : String!

    if (btn2.selected)
    {
        btn2.selected=false
        strBtnTittle = btn1.titleLabel?.text
        btn1.setTitle(btn3.titleLabel?.text, forState: .Normal)
        btn3.setTitle(strBtnTittle, forState: .Normal)

    }
    else
    {
        btn2.selected=true
        strBtnTittle = btn3.titleLabel?.text
        btn3.setTitle(btn1.titleLabel?.text, forState: .Normal)
        btn1.setTitle(strBtnTittle, forState: .Normal)
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-15
    • 2011-07-31
    相关资源
    最近更新 更多