UIView扩展--方便控件的布局
2016-03-28 13:54
387 查看
通过这个扩展类,可以比较方便地用代码来控制UI布局。
.h文件
#import <UIKit/UIKit.h> @interface UIView (Layout) @property (nonatomic, assign) CGFloat originalX;//视图左上角的X值 @property (nonatomic, assign) CGFloat originalY;//视图左上角的Y值 @property (nonatomic, assign, readonly) CGFloat maxX;//视图右下角的X值 @property (nonatomic, assign, readonly) CGFloat maxY;//视图右下角的Y值 @property (nonatomic, assign) CGFloat width;//视图的宽 @property (nonatomic, assign) CGFloat height;//视图的高 @property (nonatomic, assign) CGSize viewSize;//视图的宽和高 @property (nonatomic, assign) CGFloat centerPointX;//中心位置的X坐标 @property (nonatomic, assign) CGFloat centerPointY;//中心位置的Y坐标 @end
.m文件
#import "UIView+Layout.h" @implementation UIView (Layout) //setting Methods - (void)setOriginalX:(CGFloat)originalX { CGRect frame = self.frame; frame.origin.x = originalX; self.frame = frame; } - (void)setOriginalY:(CGFloat)originalY { CGRect frame = self.frame; frame.origin.y = originalY; self.frame = frame; } - (void)setWidth:(CGFloat)width { CGRect frame = self.frame; frame.size.width = width; self.frame = frame; } - (void)setHeight:(CGFloat)height { CGRect frame = self.frame; frame.size.height = height; self.frame = frame; } - (void)setViewSize:(CGSize)viewSize { CGRect frame = self.frame; frame.size = viewSize; self.frame = frame; } - (void)setCenterPointX:(CGFloat)centerPointX { self.center = CGPointMake(centerPointX, self.center.y); } - (void)setCenterPointY:(CGFloat)centerPointY { self.center = CGPointMake(self.center.x, centerPointY); } //getting Methods - (CGFloat)originalX { return self.frame.origin.x; } - (CGFloat)originalY { return self.frame.origin.y; } - (CGFloat)maxX { return CGRectGetMaxX(self.frame); } - (CGFloat)maxY { return CGRectGetMaxY(self.frame); } - (CGFloat)width { return self.frame.size.width; } - (CGFloat)height { return self.frame.size.height; } - (CGSize)viewSize { return self.bounds.size; } - (CGFloat)centerPointX { return self.center.x; } - (CGFloat)centerPointY { return self.center.y; } @end
相关文章推荐
- 在Archive项目 时,出现了UUID报错
- hdu 1711 Number Sequence KMP模板题
- 交换排序之快速排序
- 2016.03.27,英语,《Vocabulary Builder》Unit 06
- 为UIImageView设置手势不生效????
- UITableView:改变 TableHeaderView 的高度
- poj2478 Farey Sequence (欧拉函数)
- 【开源项目13】Volley框架 以及 设置request超时时间
- 自定义弹窗
- 新手色彩三刀流UI界面配色
- Java中String判断相等equals与==的区别以及StringBuilder的equals
- StringBuilder 和StringBuffer的理解
- mysql:慢查询日志slow_query_log
- Android4.42-Settings源码分析之蓝牙模块Bluetooth整体实现(总)
- “四核”驱动的“三维”导航 -- 淘宝新UI(需求分析篇)
- ios-消息弹框之UIAlertView, UIActionSheet以及UIAlertController小结
- uestc1133菲波拉契数制
- UIButton常用属性总结
- Unique Binary Tree
- Hadoop 数据类型与文件结构剖析 Sequence, Map, Set, Array, BloomMap Files