首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在UIButton中显示图像的一部分

在UIButton中显示图像的一部分
EN

Stack Overflow用户
提问于 2012-12-29 02:20:10
回答 1查看 148关注 0票数 0

可能重复: create UIImageView with portion of image file

我已经设置了一系列大约30 px30 of的按钮。我有一张大小为300 px300 of的图片。

当我将图像设置为图像或背景图像时,图像将自动调整大小以适应按钮。我想要做的是显示一个30x30段的图像。

我已经尝试过几种方法来做这件事,但是它们似乎是徒劳的。我试过骑马-(无效)layoutSubviews,但这导致图像比按钮本身更大,并导致其他奇怪的行为。

我也尝试过修改“图像视图”属性,但同样没有工作。

最后,我尝试了使用imageEdgeInsets,但这也有类似的行为骑在layoutSubviews之上。

我想这样做,因为我有许多按钮,将构成整个画面,但这些将是移动的。另一种方法是将图像分割成一个油漆风格的包,但从长远来看,这将导致额外的工作,并且更愿意通过编程来完成。如能就如何开展工作提供任何指导,将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-29 02:51:39

在发完这个问题后,我做了进一步的调查,并发现了以下情况。

其中一些方面与位于create UIImageView with portion of image file的问题非常相似。

代码语言:javascript
复制
    UIImage* img = [UIImage imageNamed:currentImage];
    CGRect imgFrame = CGRectMake(x, y, 30, 30);
    CGImageRef imageRef = CGImageCreateWithImageInRect([img CGImage], imgFrame);
    UIImage* subImage = [UIImage imageWithCGImage: imageRef];
    [imageButton setBackgroundImage:subImage forState:UIControlStateNormal];

完成后,可以简单地将subImage添加为is按钮的图像,例如:-

代码语言:javascript
复制
    [imageButton setBackgroundImage:subImage forState:UIControlStateNormal];
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14078152

复制
相关文章

相似问题

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