如果我只在按钮中放置一个图像,然后将imageEdgeInsets设置为更靠近顶部,则图像将居中,并且所有功能均按预期进行:
[button setImage:image forState:UIControlStateNormal];
[button setImageEdgeInsets:UIEdgeInsetsMake(-15.0, 0.0, 0.0, 0.0)];
如果我仅在按钮中放置文本,然后将titleEdgeInsets设置为更靠近底部,则文本将保持居中状态,并且可以按预期运行:
[button setTitle:title forState:UIControlStateNormal];
[button setTitleEdgeInsets:UIEdgeInsetsMake(0.0, 0.0, -30, 0.0)];
但是,如果我将4行放在一起,则文本会干扰图像,并且都失去中心对齐。
我所有的图像都有30像素的宽度,如果我在setSettletleEdgeInsets的UIEdgeInsetMake的左侧参数中输入30,则文本将再次居中。问题在于图像永远不会居中,因为它似乎取决于button.titleLabel的大小。我已经尝试过使用按钮大小,图像大小,titleLabel大小进行许多计算,并且从来都无法完美地居中。
有人已经遇到了同样的问题吗?
白衣非少年
蓝山帝景
至尊宝的传说