如何在 iOS 中使用边缘插图?
Posted
技术标签:
【中文标题】如何在 iOS 中使用边缘插图?【英文标题】:How to use edge insets in iOS? 【发布时间】:2013-03-06 22:29:29 【问题描述】:如何使用边缘插图使图像适合按钮?我不确定 UIEdgeInsetsMake() 中的参数使用什么值。我可以以某种方式使用按钮的宽度和高度来设置它们吗?
我希望按钮在未选中时只是一个图像。我了解如何执行“未选择时”部分,但我不知道如何使用边缘插图,也不知道该术语的确切含义。
我现在有这个:
image = [image resizableImageWithCapInsets:UIEdgeInsetsMake(<#CGFloat top#>, <#CGFloat left#>, <#CGFloat bottom#>, <#CGFloat right#>)];
[button setImage:image forState:!UIControlStateSelected];
另外,一旦按钮被选中,我将如何恢复为不使用图像?
【问题讨论】:
您能提供更多细节吗?你试过什么?你想让按钮只是一个图像,一个顶部有文本的图像,还是什么? 您可能会在这里找到答案***.com/questions/7628004/… 【参考方案1】:我想我明白你在说什么。如果我误解了您的问题,请告诉我。
假设你有myImage.png
。初始化如下:
[button setImage:[UIImage imageNamed:@"myImage.png"] forState:UIControlStateNormal];
然后,假设您在 Interface Builder 中为按钮连接了 IBAction:
- (IBAction)myButtonWasPressed:(UIButton *)sender
[sender setImage:nil];
【讨论】:
谢谢,但是如何使用边缘插入来缩小图片并使其与按钮的大小相匹配? 使用setBackgroundImage
而不是setImage
应该适当地缩放它。
如果您正在谈论将图像设置为与整个按钮不同的大小,那么您将需要使用边缘插图。以上是关于如何在 iOS 中使用边缘插图?的主要内容,如果未能解决你的问题,请参考以下文章
如何让 UITableView 设置其单元格的插图而不在整个表格上设置插图?
WKInterfaceController,如何以编程方式设置“间距”和“插图”