自定义UIButton--iPhone按钮控件点击效果写法
2012-12-27 18:09
375 查看
当我们自定义了一个UIButton时,如果采用重绘的方式,将drawRect事件重写了,原有自带的点击的效果就没有了,这时,我们也要自己来重新写的。
例如下面效果的按钮
![](http://iphone.xiaoxiaostudio.net/wp-content/uploads/2012/12/IMG_0022.png)
- (id) initWithFrame:(CGRect)frame {
if ((self = [super initWithFrame:frame])) {
[self addObserver:self forKeyPath:@"highlighted" options:0 context:nil]; //增加对highlighted属性的观察
}
return self;
}
-(void)dealloc
{
[self removeObserver:self forKeyPath:@"highlighted"];//移除对highlighted属性的观察
[super dealloc];
}
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
if ([keyPath isEqualToString:@"highlighted"]) {
[self setNeedsDisplay];//当按钮被按下时,重绘按钮
}
}
完整代码请点这里
例如下面效果的按钮
![](http://iphone.xiaoxiaostudio.net/wp-content/uploads/2012/12/IMG_0022.png)
- (id) initWithFrame:(CGRect)frame {
if ((self = [super initWithFrame:frame])) {
[self addObserver:self forKeyPath:@"highlighted" options:0 context:nil]; //增加对highlighted属性的观察
}
return self;
}
-(void)dealloc
{
[self removeObserver:self forKeyPath:@"highlighted"];//移除对highlighted属性的观察
[super dealloc];
}
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
if ([keyPath isEqualToString:@"highlighted"]) {
[self setNeedsDisplay];//当按钮被按下时,重绘按钮
}
}
完整代码请点这里
相关文章推荐
- 自定义UIButton--iPhone按钮控件点击效果写法
- iOS开发系列之常用自定义控件开发集—继承UIButton控件代码快速创建按钮开发
- grid view中自定义模板中的按钮控件如何获得点击的所在行
- AutoCompleteTextView控件自定义下拉框背景,点击效果,字体显示效果,匹配条件等效果
- 安卓中自定义view控件代替radiogroup实现颜色渐变效果的写法
- 自定义ViewGroup---点击控件时水波纹效果
- iOS中给自定义tabBar的按钮添加点击放大缩小的动画效果
- 携程在手点击小按钮缩放效果与自定义按钮效果
- 控件按钮的点击效果
- iOS cocos2d实现自定义button(按钮特效)控件效果源码
- IOS 自定义UIBUTTON 直接拖个xib 就能在button上显示多行文本 并且添加了点击的效果
- 自定义Drawable(文字按钮点击效果设置)
- iOS cocos2d实现自定义button(按钮特效)控件效果源码
- css美化number类型输入框美化实现自定义+、-号点击按钮增减效果
- xcode UIButton创建、监听按钮点击、自定义按钮 、状态 、内边距
- 自定义按钮实现水波点击效果
- IOS 自定义UIBUTTON 直接拖个xib 就能在button上显示多行文本 并且添加了点击的效果
- Android中的Button自定义点击效果之改变点击时按钮的颜色
- 最方便的自定义带点击效果的圆角背景按钮
- iOS 自定义UITableViewCell上添加UIButton按钮如何确定点击了哪一行,代码块实现