UIBarButtonItem类别快速实现导航栏左右键

为了方便快速实现导航栏左右键的操作,特意封装了一个类

#import "UIBarButtonItem+Extension.h"

@implementation UIBarButtonItem (Extension)

+(UIBarButtonItem *)itemWithTarget:(id)target action :(SEL)action image:(UIImage *)image{

    UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom];
    [button setBackgroundImage:image forState:UIControlStateNormal];
    [button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
    button.size = button.currentBackgroundImage.size;
    return [[UIBarButtonItem alloc] initWithCustomView:button];
}



+(UIBarButtonItem *)itemWithTarget:(id)target action :(SEL)action title:(NSString *)title{
    
    UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom];
    //button.backgroundColor = [UIColor blueColor];

    [button setTitle:title forState: UIControlStateNormal];
    [button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];

    CGRect frame = [title boundingRectWithSize:CGSizeMake(50, 50) options: NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading  attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:18]} context:nil];
    
    button.size = frame.size;
    
    return [[UIBarButtonItem alloc] initWithCustomView:button];
}


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

推荐阅读更多精彩内容