UIBarButtonItems的水平定位没问题,我可以简单地用固定/灵活的空间物品填充空间。但是,我似乎无法垂直调整工具栏项。 UIToolbar没有对齐属性,UIBarButtonItem无法设置其框架。
我需要这样做是因为我们使用了使用initWithImage创建的自定义图标和使用initWithBarButtonSystemItem创建的标准图标。自定义图标没有正确居中(它们向上偏移,相对于系统图标,它们正确居中),因此工具栏看起来很笨拙。
答案 0 :(得分:34)
是的,imageInsets对我来说很好用!
float topInset = 4.0f;
myUIBarButton.imageInsets = UIEdgeInsetsMake(topInset, 0.0f, -topInset, 0.0f);
将图像向下移动4个像素。
避免这个:
float topInset = 4.0f;
myUIBarButton.imageInsets = UIEdgeInsetsMake(topInset, 0.0f, 0.0f, 0.0f);
将图像向下移动4个像素(但是重新调整图像高度,使其看起来像是压缩的)。
答案 1 :(得分:3)
UIBarItem的imageInsets属性?
答案 2 :(得分:1)
似乎没有任何简单,干净的方式,所以我选择了一个丑陋但功能强大的黑客:嵌套。我将包含该按钮的另一个UIToolbar插入到UIView中,我使用initWithCustomView将其设置为原始工具栏上的UIBarButtonItem。第二个UIToolbar可以在UIView中自由移动,实际图标保留UIBarButtonItem的所有属性。
呃。