UIView的分类--iOS

#import <UIKit/UIKit.h>

@interface UIView (PJXExtension)

@property(assign,nonatomic) CGFloat x; //x坐标

@property(assign,nonatomic) CGFloat y; //y坐标

@property(assign,nonatomic) CGFloat width; //宽度

@property(assign,nonatomic) CGFloat height; //高度

@property(assign,nonatomic) CGFloat centerX; //中心点X值

@property(assign,nonatomic) CGFloat centerY; //中心点Y值

@end

#import "UIView+PJXExtension.h"

@implementation UIView (PJXExtension)

//x

-(void)setX:(CGFloat)x{

CGRect frame = self.frame;

frame.origin.x = x;

self.frame = frame;

}

-(CGFloat)x{

return self.frame.origin.x;

}

//y

-(void)setY:(CGFloat)y{

CGRect frame = self.frame;

frame.origin.y = y;

self.frame = frame;

}

-(CGFloat)y{

return self.frame.origin.y;

}

//width

-(void)setWidth:(CGFloat)width{

CGRect frame = self.frame;

frame.size.width = width;

self.frame = frame;

}

-(CGFloat)width{

return self.frame.size.width;

}

//height

-(void)setHeight:(CGFloat)height{

CGRect frame = self.frame;

frame.size.height = height;

self.frame = frame;

}

-(CGFloat)height{

return self.frame.size.height;

}

//centerX

-(void)setCenterX:(CGFloat)centerX{

CGRect frame = self.frame;

frame.origin.x = centerX - frame.size.width/2.0;

self.frame = frame;

}

-(CGFloat)centerX{

return CGRectGetMidX(self.frame);

}

//centerY

-(void)setCenterY:(CGFloat)centerY{

CGRect frame = self.frame;

frame.origin.y = centerY - frame.size.height/2.0;

self.frame = frame;

}

-(CGFloat)centerY{

return CGRectGetMidY(self.frame);

}

/*

//中心X

-(CGFloat)centerX

{

return  self.center.x;

}

-(void)setCenterX:(CGFloat)centerX

{

CGPoint center = self.center;

center.x = centerX;

self.center = center;

}

//中心点Y

-(CGFloat)centerY

{

return  self.center.y;

}

-(void)setCenterY:(CGFloat)centerY

{

CGPoint center = self.center;

center.y = centerY;

self.center = center;

}

*/

@end

时间: 2024-08-25 06:41:45

UIView的分类--iOS的相关文章

IOS开发之控件frame/bounds/center尺寸改变小技巧-简单给UIView新增分类(github链接)

大家是否还记得对控件的frame/bounds/center进行属性更改时的三部曲? 1>将结构体取出 2>改变取出后的结构体对应的数据 3>将修改后的结构体赋值给控件 CGRect frame = self.view.frame; // your code... frame.origin.x = frameX; // your code... self.view.frame = frame; 这在实际工作中需要更改相应属性的时候是很不方便的,所以考虑到直接在UIView的分类中添加相应

iOS开发-UI (一)补充 UIWindow UIView UIlabel

之前忘了把这些整理出来,现在补充一下,应该放在前面学习的 知识点: 1.UI的初步认识 2.UIWindow 3.UIView 4.UIlabel ======================== UI的初步认识 1.什么是UI(*) UI即User Interface(用户界面)的简称.UI设计则是指对软 件的人机交互.操作逻辑.界面美观的整体设计.好的UI设 计不仅是让软件变得有个性有品味,还要让软件的操作变得 舒适.简单.自由.充分体现软件的定位和特点. 2.第一个UI工程 1)UI工程的

iOS 添加view的分类(更加方便的设置view的位置)

点击创建UIView的分类category,这里命名为 PLExtension(为了和下面对应) view分类.h文件 #import <UIKit/UIKit.h> @interface UIView (PLExtension) @property (nonatomic, assign) CGFloat WL_width; @property (nonatomic, assign) CGFloat WL_height; @property (nonatomic, assign) CGFloa

iOS开发中可能有用的那些分类们Categories

Categories是给你得不到源码的classes增加功能的一种方法. UIImageView+FaceAwareFill 这个类别使用了Aspect Fill内容模式,可以自动根据图像内容进行调整,当检测到人脸时,它会以脸部中心替代掉以图片的几何中心. 测试环境:Xcode 5.0,iOS 6.0以上 NSRegularEx+ObjCRegex Objective-C-RegEx-Categories是NSRegularExpression的一个延展,它可以把Object-C中的很多正则表达

iOS开发拓展篇—音频处理(音乐播放器2)

iOS开发拓展篇—音频处理(音乐播放器2) 说明:该文主要介绍音乐播放界面的搭建. 一.跳转 1.跳转到音乐播放界面的方法选择 (1)使用模态跳转(又分为手动的和自动的) (2)使用xib并设置跳转 2.两种方法的分析 可以使用模态的方法,添加一个控制器,让这个控制器和音乐播放控制器类进行关联,脱线,设置标识符且在cell的点击事件中执行segue即可. 步骤说明: (1)在storyboard中新拖入一个控制器,然后设置和playing控制器类相关联. (2)设置手动跳转 (3)设置segue

iOS开发-线程安全-09-多线程

1 返回主页 2 GarveyCalvin 3 4 程序人生-改变未来 5 6 博客园 7 首页 8 新随笔 9 联系 10 订阅 11 管理 12 随笔- 29 文章- 29 评论- 43 13 iOS开发-多线程开发之线程安全篇 14 15 前言:一块资源可能会被多个线程共享,也就是多个线程可能会访问同一块资源,比如多个线程访问同一个对象.同一个变量.同一个文件和同一个方法等.因此当多个线程访问同一块资源时,很容易会发生数据错误及数据不安全等问题.因此要避免这些问题,我们需要使用“线程锁”来

UIView+Extension方便在开发时快速修改视图的位置大小

在做iOS开发时,我们经常需要设定某个控件的大小,位置,通常我们采用的方法是用CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>);来设置位置坐标,和自身的宽高,然后在赋值个控件的frame,这样做太麻烦,在一个项目里添加有一个UIview的分类,在分类里定义一些属性如下图所示 把头文件放到你的整个项目的头文件中就可以了,在任何地方使用时是需要点出来就行

仿新浪微博IOS客户端(v5.2.8)——设置导航栏外观

转载请标明出处:http://blog.csdn.net/android_ls/article/details/45849447 声明:仿新浪微博项目,所用所有图片资源都来源于官方新浪微博IOS客户端,编写本应用的目的在于学习交流,如涉及侵权请告知,我会及时换掉用到的相关图片. 一. 在Xcode6下添加.pch文件 对于使用惯了之前版本Xcode的朋友来说,在系统提醒之下升级到Xcode 6之后,发现新建项目后Xcode不再帮我们创建.pch文件了.可是我们已经习惯了,把一些在很多地方都用的宏

[iOS]终极横竖屏切换解决方案1

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px "Helvetica Neue"; background-color: #ffffff } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #8c8c8c; background-color: #ffffff } p.p3 { margin: 0.0px