zoukankan      html  css  js  c++  java
  • ios中NSObject分类

    #import <Foundation/Foundation.h>
    
    
    #define BUNDLE_PATH_IMAGENAME(c) [[NSBundle mainBundle] pathForResource:c ofType:nil]
    
    
    
    @interface NSObject (UICateGory)
    
    @end
    
    @interface UILabel (ext)
    
    +(UILabel*)LabWithFrame:(CGRect)_rect text:(NSString*)aText textColor:(UIColor*)aColor textAlign:(NSTextAlignment)aAlign font:(UIFont*)aFont;
    
    @end
    
    #pragma mark ********** UIButton *************
    
    @interface UIButton (ext)
    
    + (UIButton *)ButtonWithImageName:(NSString*)aImageName hImageName:(NSString*)aHImageName frame:(CGRect)aFrame title:(NSString *)aTitle titleColor:(UIColor *)aColor font:(UIFont *)aFont target:(id)aTarget action:(SEL)aAction;
    
    + (UIButton *)ButtonWithSystemImage:(CGRect)aFrame title:(NSString *)aTitle titleColor:(UIColor *)aColor font:(UIFont *)aFont target:(id)aTarget action:(SEL)aAction;
    @end
    
    #pragma mark ********** UIImageView *************
    @interface UIImageView (ext)
    
    + (UIImageView *)ImageViewImageName:(NSString*)aImageName frame:(CGRect)aRect;
    
    @end
    
    
    #pragma mark ********** UITableView *************
    @interface UITableView (ext)
    
    + (UITableView *)TableViewWithFrame:(CGRect)frame style:(UITableViewStyle)style backgroundColor:(UIColor *)backgroundColor delegate:(id)delegate separatorStyle:(UITableViewCellSeparatorStyle)separatorStyle;
    
    
    @end
    
    #pragma mark ********** UITextField *************
    
    @interface UITextField (ext)
    
    +(UITextField*)TextFieldWithFrame:(CGRect)_rect target:(id)target textColor:(UIColor*)aTextColor textAlign:(NSTextAlignment)aAlign placeHolder:(NSString*)holder clearMode:(UITextFieldViewMode)aViewMode returnKey:(UIReturnKeyType)returnKeyType keyBord:(UIKeyboardType)keyBord;
    
    @end
    
    
    #pragma mark ********** UIImage *************
    
    @interface UIImage (ext)
    
    + (UIImage *) ImageWithColor: (UIColor *) color frame:(CGRect)aFrame;
    @end
    
    ===============
    
    #import "NSObject+UICateGory.h"
    
    @implementation NSObject (UICateGory)
    
    @end
    
    
    @implementation UILabel (ext)
    
    +(UILabel*)LabWithFrame:(CGRect)_rect text:(NSString*)aText textColor:(UIColor*)aColor textAlign:(NSTextAlignment)aAlign font:(UIFont*)aFont{
        UILabel *lab = [[[UILabel alloc] initWithFrame:_rect] autorelease];
        lab.backgroundColor = [UIColor clearColor];
        if ([aText length] > 0)
            lab.text = aText;
        if (aColor)
            lab.textColor = aColor;
        if(aAlign)
            lab.textAlignment = aAlign;
        if (aFont)
            lab.font = aFont;
        return lab;
    }
    @end
    
    @implementation UIButton (ext)
    
    + (UIButton *)ButtonWithImageName:(NSString*)aImageName hImageName:(NSString*)aHImageName frame:(CGRect)aFrame title:(NSString *)aTitle titleColor:(UIColor *)aColor font:(UIFont *)aFont target:(id)aTarget action:(SEL)aAction{
        UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
        button.frame = aFrame;
        if ([aImageName length] > 0) {
            UIImage *bgImg = [UIImage imageWithContentsOfFile:BUNDLE_PATH_IMAGENAME(aImageName)];
            if ([bgImg respondsToSelector:@selector(resizableImageWithCapInsets:)]) {
                [button setBackgroundImage:[bgImg resizableImageWithCapInsets:UIEdgeInsetsMake(bgImg.size.height/2, bgImg.size.width/2, bgImg.size.height/2, bgImg.size.width/2)] forState:UIControlStateNormal];
            }else {
                [button setBackgroundImage:[bgImg stretchableImageWithLeftCapWidth:bgImg.size.width/2 topCapHeight:bgImg.size.height/2] forState:UIControlStateNormal];
            }
        }
        if ([aHImageName length] > 0)
        {
            UIImage *bgImg = [UIImage imageWithContentsOfFile:BUNDLE_PATH_IMAGENAME(aHImageName)];
            
            if ([bgImg respondsToSelector:@selector(resizableImageWithCapInsets:)]) {
                [button setBackgroundImage:[bgImg resizableImageWithCapInsets:UIEdgeInsetsMake(bgImg.size.height/2, bgImg.size.width/2, bgImg.size.height/2, bgImg.size.width/2)] forState:UIControlStateHighlighted];
            }else {
                [button    setBackgroundImage:[bgImg stretchableImageWithLeftCapWidth:bgImg.size.width/2 topCapHeight:bgImg.size.height/2] forState:UIControlStateHighlighted];
            }
        }
        if ([aTitle length] > 0)
            [button setTitle:aTitle forState:UIControlStateNormal];
        if (aColor)
            [button setTitleColor:aColor forState:UIControlStateNormal];
        if (aFont)
            button.titleLabel.font = aFont;
        [button addTarget:aTarget action:aAction forControlEvents:UIControlEventTouchUpInside];
        
        return button;
    }
    + (UIButton *)ButtonWithSystemImage:(CGRect)aFrame title:(NSString *)aTitle titleColor:(UIColor *)aColor font:(UIFont *)aFont target:(id)aTarget action:(SEL)aAction{
        UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        button.frame = aFrame;
        if ([aTitle length] > 0)
            [button setTitle:aTitle forState:UIControlStateNormal];
        if (aColor)
            [button setTitleColor:aColor forState:UIControlStateNormal];
        if (aFont)
            button.titleLabel.font = aFont;
        [button addTarget:aTarget action:aAction forControlEvents:UIControlEventTouchUpInside];
        
        return button;
    }
    
    
    @end
    
    @implementation UIImageView (ext)
    
    + (UIImageView *)ImageViewImageName:(NSString*)aImageName frame:(CGRect)aRect{
        UIImageView *imageView = [[[UIImageView alloc] initWithFrame:aRect] autorelease];
        imageView.userInteractionEnabled = YES;
        UIImage *aImage = [UIImage imageWithContentsOfFile:BUNDLE_PATH_IMAGENAME(aImageName)];
        if ([aImage respondsToSelector:@selector(resizableImageWithCapInsets:)]) {
            imageView.image = [aImage resizableImageWithCapInsets:UIEdgeInsetsMake(aImage.size.height/2, aImage.size.width/2, aImage.size.height/2, aImage.size.width/2)];
        } else {
            imageView.image = [aImage stretchableImageWithLeftCapWidth:aImage.size.width/2 topCapHeight:aImage.size.height/2];
        }
        return imageView;
    }
    
    @end
    
    
    @implementation UITableView (ext)
    
    + (UITableView *)TableViewWithFrame:(CGRect)frame style:(UITableViewStyle)style backgroundColor:(UIColor *)backgroundColor delegate:(id)delegate separatorStyle:(UITableViewCellSeparatorStyle)separatorStyle {
        
        UITableView *tableView = [[[UITableView alloc] initWithFrame:frame style:style] autorelease];
        [tableView setBackgroundColor:backgroundColor];
        [tableView setDelegate:delegate];
        [tableView setDataSource:delegate];
        [tableView setSeparatorStyle:separatorStyle]; 
        
        return tableView;
    }
    
    @end
    
    @implementation UITextField (ext)
    
    +(UITextField*)TextFieldWithFrame:(CGRect)_rect target:(id)target textColor:(UIColor*)aTextColor textAlign:(NSTextAlignment)aAlign placeHolder:(NSString*)holder clearMode:(UITextFieldViewMode)aViewMode returnKey:(UIReturnKeyType)returnKeyType keyBord:(UIKeyboardType)keyBord{
        UITextField *textField = [[[UITextField alloc] initWithFrame:_rect] autorelease];
        textField.backgroundColor = [UIColor clearColor];
        textField.delegate = target;
        textField.returnKeyType = returnKeyType;
        textField.keyboardType = keyBord;
        if (aAlign)
            textField.textAlignment = aAlign;
        if (aTextColor)
            textField.textColor = aTextColor;
        if (aViewMode)
            textField.clearButtonMode = aViewMode;
        if ([holder length] > 0)
            textField.placeholder = holder;
        textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
        
        return textField;
    }
    
    @end
    
    #pragma mark ********** UIImage *************
    
    @implementation UIImage (ext)
    
    + (UIImage *) ImageWithColor: (UIColor *) color frame:(CGRect)aFrame
    {
        aFrame = CGRectMake(0, 0, aFrame.size.width, aFrame.size.height);
        UIGraphicsBeginImageContext(aFrame.size);
        CGContextRef context = UIGraphicsGetCurrentContext();
        CGContextSetFillColorWithColor(context, [color CGColor]);
        CGContextFillRect(context, aFrame);
        
        UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
        return theImage;
    }
    @end
  • 相关阅读:
    c#构造函数对string类型赋初值
    个人计算机管理
    .net Core2建立MVC网站,部署
    运行或开发.NET Core 的先决条件(支持项目、依赖项)
    在Windows下不使用密码远程登陆Linux
    在Linux下不使用密码远程登陆其他Linux
    如何查看MySQL中每张表占用的空间大小
    pdo如何防止 sql注入
    受教了,memcache比较全面点的介绍,受益匪浅,适用memcached的业务场景有哪些?memcached的cache机制是怎样的?在设计应用时,可以通过Memcached缓存那些内容?
    LVS原理详解及部署之二:LVS原理详解(3种工作方式8种调度算法)
  • 原文地址:https://www.cnblogs.com/gcb999/p/3229748.html
Copyright © 2011-2022 走看看