天天看點

iOS常用方法——一個好用的擷取View的位置和大小的類

在寫代碼的時候我們如果用frame進行布局的話,經常會用到像self.view.frame.size.width這樣的語句來擷取我們想要的位置或者大小的值,這個語句調用的時候很繁雜,下面是我封裝的一個類,很簡潔的代碼就可拿到自己想要的值。

給UIVIew添加一個分類,因為UI基本都繼承自UIView,寫在UIVIew的分類中UI類都可調用。

#import <UIKit/UIKit.h>

@interface UIView (MYMargin)

@property(nonatomic,assign,readonly) float mLeft;

@property(nonatomic,assign,readonly) float mRight;

@property(nonatomic,assign,readonly) float mTop;

@property(nonatomic,assign,readonly) float mBottom;

@property(nonatomic,assign,readonly) float mWidth;

@property(nonatomic,assign,readonly) float mHeight;

@end
           
#import "UIView+MYMargin.h"

@implementation UIView (MYMargin)

-(float)mLeft{
    return self.frame.origin.x;
}

-(float)mRight{
    return self.frame.origin.x + self.frame.size.width;
}

-(float)mTop{
    return self.frame.origin.y;
}

-(float)mBottom{
    return self.frame.origin.y + self.frame.size.height;
}

-(float)mWidth{
    return self.frame.size.width;
}

-(float)mHeight{
    return self.frame.size.height;
}

@end
           

舉個?,擷取label的寬:

是不是簡單了很多呢,調用也很友善。