bio*_*ffe 14 iphone cocoa-touch objective-c uikit
为什么以下代码有效:
[signInBtn setTitleColor:[UIColor blackColor] forState:UIControlStateHighlighted];
[signInBtn setTitleColor:[UIColor blackColor] forState:UIControlStateDisabled];
Run Code Online (Sandbox Code Playgroud)
虽然这不是:
[signInBtn setTitleColor:[UIColor blackColor] forState:UIControlStateHighlighted|UIControlStateDisabled];
Run Code Online (Sandbox Code Playgroud)
Pat*_*dez 29
我知道这是一个老问题,但这些答案都不正确.
当你单独设置每个state属性时,你说的属性应该是UIControlStateHighlightedOR UIControlStateDisabled而不是两者
当你按位或他们在一起时,你说他们必须同时设置在state属性中.含义 UIControlStateHighlightedAND UIControlStateDisabled在state属性中设置.
下面的示例代码完美地说明了我的观点.如果你不同意自己运行它.
[button setTitle:@"highlighted and selected" forState:UIControlStateHighlighted | UIControlStateSelected];
[button setTitle:@"Highlighted only" forState:UIControlStateHighlighted];
[button setTitle:@"Selected only" forState:UIControlStateSelected];
[button setTitle:@"Normal" forState:UIControlStateNormal];
NSLog(@"Normal title: %@", [[button titleLabel] text]); // prints title: Normal
[button setSelected:YES];
NSLog(@"Selected title: %@", [[button titleLabel] text]); // prints title: Selected only
[button setSelected:NO];
[button setHighlighted:YES];
NSLog(@"highlighted title: %@", [[button titleLabel] text]); // prints title: Highlighted only
[button setSelected:YES];
NSLog(@"highlighted and selected title: %@", [[button titleLabel] text]); // prints title: highlighted and selected
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14960 次 |
| 最近记录: |