正如标题所说, 我想实现一个按钮,所以当用户按下一次时,一般的默认颜色会改变。假设用户按下按钮一次并且应用主题变为绿色,再次按下时,主题变为红色并再次按下它将返回到初始主题颜色。 有没有人有一个快速的例子?在谷歌上,当我搜索上面的内容时,我得到的就是如何改变按钮的颜色。 提前谢谢!
答案 0 :(得分:1)
您可以创建一个单身类(例如AppearanceManager
),然后保留currentTheme
。从您的按钮操作,您可以将此主题设置为您想要的任何内容。您还可以覆盖此变量的setter,并发布notification
,表示主题已更改。
答案 1 :(得分:1)
是的,只需勾起一个动作,每当按下UIButton时,请致电:
CGFloat red = (CGFloat)arc4random() / (CGFloat)RAND_MAX;
CGFloat blue = (CGFloat)arc4random() / (CGFloat)RAND_MAX;
CGFloat green = (CGFloat)arc4random() / (CGFloat)RAND_MAX;
UIColor *color = [UIColor colorWithRed:red green:green blue:blue alpha:1.0];
self.view.backgroundColor = color;
这些代码行基本上生成随机RGB数字,并将视图颜色转换为该颜色。
要更改其他视图控制器视图:
yourViewController.view.backroundColor = color;