【问题标题】:UIButton changes states when being pressedUIButton 在被按下时改变状态
【发布时间】:2014-04-21 22:23:21
【问题描述】:

我有一个 UIButton 配置了两种状态,默认和选择,用于不同的文本和背景,设置是在 Interface Builder 上完成的。奇怪的是,当按钮处于选中状态时,按下按钮时,它会自动变为默认状态。释放按钮后,它会变回选中状态。有没有办法禁用回滚到默认行为?

忘了说,类型是custom

更新

在 viewDidLoad 中尝试了以下代码

[self.button setTitle:@"default" forState:UIControlStateNormal];
[self.button setTitle:@"selected" forState:UIControlStateSelected];
[self.button setTitle:@"highlighted" forState:UIControlStateHighlighted];
[self.button setSelected:YES];

该按钮在按下时显示默认值。

【问题讨论】:

  • 它不会回到默认状态。它进入突出显示状态
  • 我在viewDidLoad中设置了不同状态的按钮标题,按下时显示默认状态内容。请参阅我的更新以获取示例代码。
  • 不,它进入了默认状态。

标签: ios objective-c uibutton


【解决方案1】:

选中状态和高亮状态不是相互排斥的。当您按下选定的 UIButton 时,它会进入选定并突出显示状态。

我认为没有办法在 IB 中进行设置,但您可以在代码中执行此操作:

[button setImage:[UIImage imageNamed:@"some_image"] forState:UIControlStateSelected | UIControlStateHighlighted];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-04
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多