res*_*sue 4 cocoa-touch objective-c ios
我有四个按钮将在同一场景中以相同的方式设置样式(使用Storyboard).这是一个简单的样式,需要覆盖一些属性默认值,但似乎不必要地重复为每个单独的按钮设置它.我在想我会创建一个子类,但我读过的很多帖子(特别是在stackoverflow上)警告不要为UIButton这样做(而且我所做的尝试都没有成功).
只是希望获得一个通用的指针,指出什么是最好的方法.谢谢你的建议.
如果您仅定位iOS 5,我强烈建议您观看会议114 - 自定义UIKit Controls的外观,以及WWDC 2011会话视频所需的开发人员登录.
它详细解释了App范围的样式.
我想修改yujis的想法:使用UIButton上的类别来设置按钮
.H.
@interface UIButton (MyStyling)
-(void)configureMyButtonStyle;
//other methods for more fine-grained control
@end
Run Code Online (Sandbox Code Playgroud)
.M
@implementation UIButton (MyStyling)
-(void)configureMyButtonStyle
{
[self setBackgroundColor:[UIColor colorWithRed:…]];
[self setTitleColor: [UIColor colorWithRed:…] forState: UIControlStateNormal];
//…
}
@end
Run Code Online (Sandbox Code Playgroud)
现在你可以打电话了 [aButton configureMyButtonStyle]
当然你也可以解析一些参数,以区分几种风格.
-(void)configureMyButtonForStyle:(NSInteger)style
{
if(style == 1){
//…
} else if(style == 2) {
//..
} else {
//fallback style
}
}
Run Code Online (Sandbox Code Playgroud)
使用:
[aButton configureMyButtonForStyle:1];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1505 次 |
最近记录: |