所有
我有一个包含按钮的UI元素。我在按钮上设置文本,同时设置所选状态。见下文:
- (void)setText:(NSString *)text {
self.inputButton.selected = text != nil; // select the buttons if the text is not nil
self.cancelButton.selected = text != nil;
[self.inputButton setTitle:text forState:UIControlStateSelected];
[self.inputButton setTitle:text forState:UIControlStateHighlighted];
}
在视图控制器中填写时,它正常工作。
但是,当我从前一个视图控制器传递文本时,不会显示所选的状态文本。 cancelButton
选定状态正常工作,并且应该选择inputButton
状态,但是不显示所选状态文本。
我不知道是不是因为按钮没有重绘或什么?我已经尝试了所有[self layoutIfNeed]和[self setNeedsDisplay]没有运气。有谁知道发生了什么事?
答案 0 :(得分:0)
您可以检查添加以下代码行。
- (void)setText:(NSString *)text {
self.inputButton.selected = text != nil; // select the buttons if the text is not nil
self.cancelButton.selected = text != nil;
[self.inputButton setTitle:text forState:UIControlStateSelected];
//Start:Added line of Code
[self.inputButton setTitle:text forState:UIControlStateNormal];
//End:
[self.inputButton setTitle:text forState:UIControlStateHighlighted];
}
谢谢&的问候,
阿米特
答案 1 :(得分:0)
我想出了这个问题。我正在使用选定和突出显示的状态。出于一些时髦的原因,这就是创建一个按钮状态可能为5的情况。我通过不以任何方式解决UIControlStateHighlighted
来解决问题。