我有自定义的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];

结果:

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

最佳答案

可以尝试添加自己的子视图(图像视图和标签),然后对元素的大小和位置进行完全而显式的控制,而不必尝试在按钮上操作图像和文本。

关于iphone - UIButton标题上方的中心图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17914103/

10-09 13:03