UIBarButtonItem+Extension.m

.h

//
//  UIBarButtonItem+Extension.m
//  03-MGWeChat
//
//  Created by ming on 14/12/5.
//  Copyright © 2014年 ming. All rights reserved.
//

#import "UIBarButtonItem+Extension.h"

@implementation UIBarButtonItem (Extension)

// UIBarButtonItem的封装
+ (UIBarButtonItem *)itemWithImage:(UIImage *)image highImage:(UIImage *)highImage norColor:(UIColor *)norColor selColor:(UIColor *)selColor title:(NSString *)title target:(id)target action:(SEL)action{
    UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    /// 1.设置照片
    [backBtn setImage:image forState:UIControlStateNormal];
    [backBtn setImage:highImage forState:UIControlStateHighlighted];
    /// 2.设置文字以及颜色
    [backBtn setTitle:title forState:UIControlStateNormal];
    [backBtn setTitleColor:norColor forState:UIControlStateNormal];
    [backBtn setTitleColor:selColor forState:UIControlStateHighlighted];
    [backBtn sizeToFit];
    
    [backBtn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
    return [[self alloc] initWithCustomView:backBtn];
}

+ (UIBarButtonItem *)itemWithBackgroundImage:(NSString *)image highImage:(NSString *)highImage  target:(id)target action:(SEL)action{
    UIButton *btn = [[UIButton alloc] init];
    [btn setBackgroundImage:[UIImage imageNamed:image] forState:UIControlStateNormal];
    [btn setBackgroundImage:[UIImage imageNamed:highImage] forState:UIControlStateHighlighted];
    [btn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];

    btn.size = btn.currentBackgroundImage.size;
    return [[self alloc] initWithCustomView:btn];
}

+ (UIButton *)itemWithBackgroundImage:(NSString *)image highImage:(NSString *)highImage selectImage:(NSString *)selImage
    selHighImage:(NSString *)selHighImage target:(id)target action:(SEL)action{
    UIButton *btn = [[UIButton alloc] init];
    [btn setBackgroundImage:[UIImage imageNamed:image] forState:UIControlStateNormal];
    [btn setBackgroundImage:[UIImage imageNamed:highImage] forState:UIControlStateHighlighted];
    [btn setBackgroundImage:[UIImage imageNamed:selImage] forState:UIControlStateSelected];
    if (btn.selected) {
        [btn setBackgroundImage:[UIImage imageNamed:selHighImage] forState:UIControlStateHighlighted];
        [btn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
    }
    btn.size = btn.currentBackgroundImage.size;
    return btn;
}

@end```

#.m

//
// UIBarButtonItem+Extension.h
// 03-MGWeChat
//
// Created by ming on 14/12/5.
// Copyright © 2014年 ming. All rights reserved.
//

import <UIKit/UIKit.h>

@interface UIBarButtonItem (Extension)
/** 设置背景图片 */

  • (UIBarButtonItem *)itemWithImage:(UIImage *)image highImage:(UIImage *)highImage norColor:(UIColor *)norColor selColor:(UIColor *)selColor title:(NSString *)title target:(id)target action:(SEL)action;

/** 设置图片和文字 */

  • (UIBarButtonItem *)itemWithBackgroundImage:(NSString *)image highImage:(NSString *)highImage target:(id)target action:(SEL)action;

/** 设置背景图片和选中图片 */

  • (UIButton *)itemWithBackgroundImage:(NSString *)image highImage:(NSString *)highImage selectImage:(NSString *)selImage
    selHighImage:(NSString *)selHighImage target:(id)target action:(SEL)action;

@end

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 张安松 2014-4-14 17:35 首先感谢邵鹏老师在自己生日的时候来给我们讲解微信营销的课程,参加此次培训让...
    张安松阅读 3,941评论 0 1
  • 《悲伤的查图拉》(草稿) 对于查图拉来说,这世上根本没有什么悲伤的事可言,之所以这么说,不是因为查图拉持有积...
    瓦尔登野人阅读 300评论 0 0
  • 蜷着身 一脸茫然 不知梦想还有多远 闭上眼 满目黑暗 你的微笑点亮视线 抬起头 一片蔚蓝 几朵白云点缀其间 看前方...
    萧淮阅读 267评论 0 0
  • 感情中最磨人的,不是争吵或冷战,而是明明喜欢、还要装出不在乎。爱,总和自尊捆绑在一起。但自尊绝非高高在上的...
    紫鱼非雨阅读 305评论 0 0