使用Category 重写frame
来源:互联网 发布:潭州学院java vip视频 编辑:程序博客网 时间:2024/06/06 16:45
我们在开发的过程中 经常会计算我们控件的frame 值
一般情况下都是这样的
获得x: self.frame.origin.x
获得y:self.frame.origin.y
获得width :self.frame.size.width
获得height:self.frame.size.height
这样写起来非常的麻烦 我们可以新建一个分类
重写frame 的set get 方法
这样我们可以实现单独对变量进行修改值
之前因为frame 是个结构体 嵌套两个结构体 所以没办法对其值进行单独的修改
#import <UIKit/UIKit.h>@interface UIView (UIViewFrame)//直接获得x 的值@property(nonatomic,assign)CGFloat x;//直接获得y 的值@property(nonatomic,assign)CGFloat y;//直接获得 width@property(nonatomic,assign)CGFloat width;//直接获得 height@property(nonatomic,assign)CGFloat height;@end
#import "UIView+UIViewFrame.h"@implementation UIView (UIViewFrame)//直接获得x 的值-(void)setX:(CGFloat)x{ CGRect rect = self.frame; rect.origin.x = x; self.frame = rect; }-(CGFloat)x{ return self.frame.origin.x;}//直接获得y 的值-(void)setY:(CGFloat)y{ CGRect rect = self.frame; rect.origin.y = y; self.frame = rect; }-(CGFloat)y{ return self.frame.origin.y; }//直接获得 width-(void)setWidth:(CGFloat)width{ CGRect rect = self.frame; rect.size.width = width; self.frame = rect;}-(CGFloat)width{ return self.frame.size.width;}//直接获得 height-(void)setHeight:(CGFloat)height{ CGRect rect = self.frame; rect.size.height = height; self.frame = rect;}-(CGFloat)height{ return self.frame.size.height;}@end
1 1
- 使用Category 重写frame
- frame使用
- frame使用
- IOS Category不要重写原有类方法
- 【iOS】category重写方法的调用
- 重写UIButton的图片、title Frame
- UIView 添加category方法 得到view的单个frame值
- ObjC使用Category
- Objective-C使用Category
- Category Protocol 使用场合
- Category Protocol 使用场合
- Category模式使用详解
- 分类(Category)使用
- Category 高级使用
- Category使用以及使用场景
- Frame框架,requestCommand的Frame的使用:
- 在frame使用panel
- delphi frame的使用
- java保留两位小数
- UTF-8简史
- [PHP] LAMP环境搭建
- iOS导航页
- Xamarin之TableView
- 使用Category 重写frame
- 5. jQuery 效果 - 隐藏和显示
- windows7下安装ubuntu及相关问题的解决方案
- CodeForces 447C###C. DZY Loves Sequences
- Linux netlink机制及示例
- 说说耦合(coupling)
- Ubuntu无法进入mysql,报ERROR 2002 (HY000): Can't connect to local MySQL server through socket …错误
- intel驱动包下载
- java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory