首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何让iOS在UIBarButtonItem图像上设置渐变?

如何让iOS在UIBarButtonItem图像上设置渐变?
EN

Stack Overflow用户
提问于 2013-03-15 01:14:48
回答 1查看 711关注 0票数 5

我只是想知道,我用下面的方法定制了UIBarButtonItems

代码语言:javascript
运行
复制
+ (UIBarButtonItem *)createBarButtonItemWithTitle:(NSString *)t target:(id)tgt action:(SEL)a
{
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    UIImage *buttonImage = [[UIImage imageNamed:@"blabla.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 10, 0, 10)];


    CGRect buttonFrame = [button frame];
    buttonFrame.size.width = 35;
    buttonFrame.size.height = buttonImage.size.height;
    [button setFrame:buttonFrame];

    [button setBackgroundImage:buttonImage forState:UIControlStateNormal];

    [button addTarget:tgt action:a forControlEvents:UIControlEventTouchUpInside];

    UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc] initWithCustomView:button];

    return buttonItem ;
}

但是现在,我在按钮背景图像上没有阴影/光泽效果……

有没有办法让它自动完成,或者我必须通过编程来完成?

编辑:

EN

回答 1

Stack Overflow用户

发布于 2013-04-11 07:45:19

要以这种方式完全自定义条形按钮,您需要提供除"blabla.png“中的平面绿色图像之外的其他内容。

处理这个问题的另一种方法是用你的图像创建一个边框样式的按钮。类似于:

代码语言:javascript
运行
复制
UIBarButtonItem* barButton = [UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"blabla.png"] style:UIBarButtonItemStyleBordered target:tgt selector:a];

UIBarButtonItemStyleBordered样式赋予了它3D凸起的按钮-y的外观。如果需要,您可以对其外观进行染色以匹配您的条形图。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15415862

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档