【发布时间】:2015-01-07 09:36:54
【问题描述】:
我想要两个自定义按钮来模拟 UISegmentedControl 的行为方式(切换按钮文本颜色和图像)
这是我目前所拥有的:
- (IBAction)byDateTapped:(UIButton *)sender {
UIColor *darkColor = [UIColor colorWithRed:52/255 green:91/255 blue:120/255 alpha:1.0];
UIColor *lightColor = [UIColor colorWithRed:158/255 green:200/255 blue:217/255 alpha:1.0];
self.byDateView.hidden = NO;
[self.byDateButton setBackgroundImage:[UIImage imageNamed:@"radioOn"] forState:UIControlStateNormal];
[self.byDateButton setTitleColor:darkColor forState:UIControlStateNormal];
[self.byDateButton setTitleColor:darkColor forState:UIControlStateHighlighted];
self.byCategoryView.hidden = YES;
[self.byCategoryButton setBackgroundImage:[UIImage imageNamed:@"radioOff"]forState:UIControlStateNormal];
[self.byCategoryButton setTitleColor:lightColor forState:UIControlStateNormal];
[self.byCategoryButton setTitleColor:lightColor forState:UIControlStateHighlighted];
}
- (IBAction)byCategoryTapped:(UIButton *)sender {
UIColor *darkColor = [UIColor colorWithRed:52/255 green:91/255 blue:120/255 alpha:1.0];
UIColor *lightColor = [UIColor colorWithRed:158/255 green:200/255 blue:217/255 alpha:1.0];
self.byDateView.hidden = YES;
[self.byDateButton setBackgroundImage:[UIImage imageNamed:@"radioOff"] forState:UIControlStateNormal];
[self.byDateButton setTitleColor:lightColor forState:UIControlStateNormal];
[self.byDateButton setTitleColor:lightColor forState:UIControlStateHighlighted];
self.byCategoryView.hidden = NO;
[self.byCategoryButton setBackgroundImage:[UIImage imageNamed:@"radioOn"]forState:UIControlStateNormal];
[self.byCategoryButton setTitleColor:darkColor forState:UIControlStateNormal];
[self.byCategoryButton setTitleColor:darkColor forState:UIControlStateHighlighted];
}
我似乎无法开始工作的唯一一件事是更改按钮文本颜色。任何想法为什么?
【问题讨论】:
标签: ios objective-c uibutton uisegmentedcontrol