UIButton标题上方的中心图像

时间:2013-07-28 23:34:29

标签: iphone ios objective-c

我有自定义UIButton,其高度/宽度为视图的1/4。我要做的是在按钮的标题上方设置一个图像,两个图像都位于所述按钮的中心。

代码:

CGRect imageFrame= CGRectMake(0, 0, 80, 80);
UIEdgeInsets imageInset = UIEdgeInsetsMake(0, 0, 30, 0);
UIEdgeInsets titleInset = UIEdgeInsetsMake(80, 0, 0, 0);

btnSideSettings = [UIButton buttonWithType:UIButtonTypeCustom];
btnSideSettings.frame = settingsFrame;
[btnSideSettings setImage:[UIImage imageNamed:@"btnSideSettings"] forState:UIControlStateNormal];
btnSideSettings.imageView.frame = imageFrame;
btnSideSettings.imageEdgeInsets = imageInset;
btnSideSettings.titleEdgeInsets = titleInset;
btnSideSettings.titleLabel.textAlignment = NSTextAlignmentCenter;
[btnSideSettings setTitle:@"Settings" forState:UIControlStateNormal];

结果: enter image description here

我尝试了上面代码的一些变体,主要是编辑插图。如果我注释掉添加图片,标题也会很好。感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您可以添加自己的子视图(图像视图和标签),而不是尝试操作按钮上的图像和文本,然后您可以完全明确地控制元素的大小和位置。