美文网首页iOS
工具类(设置控件 frame) - iOS

工具类(设置控件 frame) - iOS

作者: survivorsfyh | 来源:发表于2018-09-21 17:04 被阅读72次

为了便于日常开发效率,因此创建了一些小的工具类便于使用.

具体 code 如下:

声明:

#import <UIKit/UIKit.h>
 
@interface UIView (Frame)
 
@property (nonatomic, assign) CGFloat x;
@property (nonatomic, assign) CGFloat y;
@property (nonatomic, assign) CGFloat centerX;
@property (nonatomic, assign) CGFloat centerY;
@property (nonatomic, assign) CGFloat width;
@property (nonatomic, assign) CGFloat height;
@property (nonatomic, assign) CGSize size;
@property (nonatomic, assign) CGPoint origin;
 
@end

实现:

#import "UIView+Frame.h"
 
@implementation UIView (Frame)
 
- (void)setX:(CGFloat)x
{
    CGRect frame = self.frame;
    frame.origin.x = x;
    self.frame = frame;
}
 
- (void)setY:(CGFloat)y
{
    CGRect frame = self.frame;
    frame.origin.y = y;
    self.frame = frame;
}
 
- (CGFloat)x
{
    return self.frame.origin.x;
}
 
- (CGFloat)y
{
    return self.frame.origin.y;
}
 
- (void)setCenterX:(CGFloat)centerX
{
    CGPoint center = self.center;
    center.x = centerX;
    self.center = center;
}
 
- (CGFloat)centerX
{
    return self.center.x;
}
 
- (void)setCenterY:(CGFloat)centerY
{
    CGPoint center = self.center;
    center.y = centerY;
    self.center = center;
}
 
- (CGFloat)centerY
{
    return self.center.y;
}
 
- (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;
}
 
- (CGFloat)height
{
    return self.frame.size.height;
}
 
- (CGFloat)width
{
    return self.frame.size.width;
}
 
- (void)setSize:(CGSize)size
{
    CGRect frame = self.frame;
    frame.size = size;
    self.frame = frame;
}
 
- (CGSize)size
{
    return self.frame.size;
}
 
- (void)setOrigin:(CGPoint)origin
{
    CGRect frame = self.frame;
    frame.origin = origin;
    self.frame = frame;
}
 
- (CGPoint)origin
{
    return self.frame.origin;
}
 
@end

以上便是此次分享的内容,期待大神多多指点补充,使其更加强壮!

相关文章

  • 工具类(设置控件 frame) - iOS

    为了便于日常开发效率,因此创建了一些小的工具类便于使用. 具体 code 如下: 声明: 实现: 以上便是此次分享...

  • 使用Frame进行界面适配

    setFrame是最经典的方法,在iOS中没有给UI控件设置frame控件就不能显示,有时的确没有设置frame但...

  • Swift: 苹果原生自动布局介绍

    iOS中, 控件的布局方式有两种, 一种是通过frame设置控件位置, 另一种就是通过自动布局来设置控件位置 自动...

  • iOS UI控件

    IOS第五周总结 UIView 在本周学习的控件中,基本所有的控件都继承了UIVIEW这个类 frame 如果要创...

  • Auto Layout几个重要的API

    ios的布局:1.frame的布局:a.用纯代码的,我们可以是直接设置Frame的b.首先xib中随便拖入一个控件...

  • 工具类(为控件设置圆角) - iOS

    为了便于日常开发效率,因此创建了一些小的工具类便于使用.具体 code 如下:声明: 实现: 以上便是此次分享的内...

  • 封装View注意细节

    细节一 设置内部子控件的Frame 重写layoutSubViews方法设置内部子控件的FramelayoutSu...

  • 导航栏遮挡问题

    存在导航栏的情况,设置控件的frame从(0,0)开始,然后控件就被导航栏遮挡了IOS7的视图有个边缘延伸的属性:...

  • frame autoresizingMask autolayou

    控件的位置和大小有三种确定方式:frame autoresizingMask autolayout frame设置...

  • Masonry布局获取Frame的坑

    当用Masonry设置视图或控件布局时,是不能立即拿到视图或者控件的Frame,此时有两种方法可以拿到Frame。...

网友评论

    本文标题:工具类(设置控件 frame) - iOS

    本文链接:https://www.haomeiwen.com/subject/alkznftx.html