【发布时间】:2015-05-13 12:17:18
【问题描述】:
如何在 Swift 中将字符串属性与 UIButton 关联?我不希望字符串显示为按钮文本,只是作为标识符或键分配给按钮。这是我到目前为止所拥有的:
func createAnswerButtons() {
var index:Int
for index = 0; index < self.currentQuestion?.answers.count; index++ {
// Create an answer button view
var answer:AnswerButtonView = AnswerButtonView()
selection.setTranslatesAutoresizingMaskIntoConstraints(false)
// Place into content view
self.scrollViewContentView.addSubview(answer)
// Add a tapped gesture recognizer to the button
let tapGesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: Selector("answerTapped:"))
answer.addGestureRecognizer(tapGesture)
// Add constraints etc
// Set the answer button text
let answerText = self.currentQuestion!.answers[index]
answer.setAnswerText(answerText)
// Set the identifier for each answer button
self.identifier = self.currentQuestion!.answerIdentifier[index]
// Add to the selection button array
self.answerButtonArray.append(answer)
}
所以我想我之后需要一些东西
// Set the identifier for each answer
self.identifier = self.currentQuestion!.answerIdentifier[index]
将标识符分配给按钮。
这样做的原因是我正在尝试实现决策树逻辑,以便我可以跟踪每个被点击的答案按钮以生成与最终结果相对应的代码字符串。
【问题讨论】:
-
为什么不用tag属性呢?
-
@LeonardoSavioDabus 标签不是字符串。这是
NSInteger。 -
@nhgrif 我知道如果他不显示文本,我认为不需要字符串
-
brad88,你试过我的答案了吗?
-
不,我不知道如何利用那个答案!尝试了几次,但老实说我不确定我在做什么