首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode:图像在UIBarItem上填充颜色,同时缩放,函数initeWithImage(UIImage)

Xcode:图像在UIBarItem上填充颜色,同时缩放,函数initeWithImage(UIImage)
EN

Stack Overflow用户
提问于 2016-03-05 23:47:45
回答 1查看 54关注 0票数 1

请帮助我找到一些解决以下问题的方法。IOS,Xcode我有UIBarItem组件--在工具栏上切换语言的按钮。该条形图具有initeWithImage(UIImage)函数。问题是,当我试图缩放图像时,它变得充满了color...The,对于工具栏来说,图片太大了。我已经手动改变了图片的大小,但是它看起来很难看(我需要缩放)。

我试着解决了这个问题: 1、槽级2.通过帧大小3.以及两者的变化:)

一些代码:

代码语言:javascript
复制
    self initWithImage:image //
                                 style: UIBarButtonItemStyleBordered //UIBarButtonItemStylePlain
                                target:target
                                action:action
 UIImage *image;
  image = [[UIImage imageNamed:@“image.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
代码语言:javascript
复制
-(UIImage )imageWithImages:(UIImage )image scaledToSize:(CGSize)newSize {
    //UIGraphicsBeginImageContext(newSize);
    // In next line, pass 0.0 to use the current device's pixel scaling factor (and thus account for Retina resolution).
    // Pass 1.0 to force exact pixel size.
    UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
    [image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return newImage;
}

拜托,帮帮我。相当简单但很棘手的任务。我已经花了好几个小时.(预先谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-06 01:58:52

您不应该使用initWithImage方法。如果您想要显示确切的图像,应该使用initWithCustomView方法。

例如:

代码语言:javascript
复制
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image"]];
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithCustomView:imageView];

如果愿意,可以先缩小图像,然后再将其设置为图像视图。

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

https://stackoverflow.com/questions/35821335

复制
相关文章

相似问题

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