ios – 触摸时UIButton没有显示高亮显示

我试图突出我的UIButton与自定义UIColor浅灰色,并使文本变白…但我不知道如何做到这…这是我创建UIButton到目前为止任何帮助将不胜感激.
cancelButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    cancelButton.frame = CGRectMake(10.0,calculatorView.frame.size.height-55,100.0,45.0);
    [cancelButton addTarget:self action:@selector(calculateMethod:)forControlEvents:UIControlEventTouchDown];
    [[cancelButton titleLabel] setFont:[UIFont fontWithName: @"Super-text" size:20.0]];
    [cancelButton setTitle:@"Cancel" forState:UIControlStatenormal];

解决方法

要获得突出显示的白色文本,请执
[cancelButton setTitleColor:[UIColor whiteColor]
                       forState:UIControlStateHighlighted];

要获得更改背景,您需要执行setBackgroundImage:forState:并使用带图案颜色的UIImage或子类UIButton,并在setHighlight:方法中设置适当的背景颜色.

编辑:Swift 2.x版本

cancelButton.setTitleColor(.whiteColor(),forState: Highlighted)

编辑:Swift 3.0版本

cancelButton.setTitleColor(.white,for: .highlighted)

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...