首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从Button获取标签名称?

如何从Button获取标签名称?
EN

Stack Overflow用户
提问于 2014-09-27 19:37:11
回答 4查看 54.2K关注 0票数 37

我是Swift的新手,我正在做一个简单的计算器,我不想检测被按下的按钮,我的代码如下。

代码语言:javascript
复制
 @IBAction func ButtonTapped(TheButton : UIButton){

    println(TheButton.titleLabel.text)
}

但是它显示了像"UILabel? Does not have a member a named text"这样的错误

它告诉我像这样修改代码

代码语言:javascript
复制
println(TheButton.titleLabel?.text)

这将打印Optional("1") (1是我的按钮名称)

因此任何人都可以帮助我为什么会发生这种情况,以及如何在没有可选选项的情况下打印我的按钮名称?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-09-27 19:43:25

如果您确定titleLabel不是nil

代码语言:javascript
复制
println(TheButton.titleLabel!.text)

否则

代码语言:javascript
复制
if let text = TheButton.titleLabel?.text {
    println(text)
}
票数 54
EN

Stack Overflow用户

发布于 2015-02-20 02:08:38

更简单地说,你可以这样做:

代码语言:javascript
复制
let titleValueString = TheButton.currentTitle!

如果按钮的标题不是nil,感叹号(!)将隐式展开可选的(不带感叹号的currentTitle),并且您将在常量titleValueString中获得按钮标题的字符串值

票数 17
EN

Stack Overflow用户

发布于 2016-05-22 11:53:05

最上面的答案不再有效。以下是Swift 2.2的更正版本:

如果您确定titleLabel不是nil:

代码语言:javascript
复制
print(TheButton.titleLabel!.text!)

如果您不是:

代码语言:javascript
复制
if let text = TheButton.titleLabel?.text {
    print(text)
}
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26074239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档