1
我有CustomImage UIButtons作为我的UIBarButtonItems。这位图形设计师制作图像的方式,使它们彼此接触,彼此之间没有10px左右的差距。有没有办法在将它们添加到UIToolBar时删除UIBarButtonItem之间的差距?更改UIBarButton项目之间的空间为零?
谢谢
我有CustomImage UIButtons作为我的UIBarButtonItems。这位图形设计师制作图像的方式,使它们彼此接触,彼此之间没有10px左右的差距。有没有办法在将它们添加到UIToolBar时删除UIBarButtonItem之间的差距?更改UIBarButton项目之间的空间为零?
谢谢
所以摆弄,我能够得到的东西工作。虽然我不是100%确定,但我明白为什么。如果我传入宽度很大的图像(大于15 + px),它可以正常工作,如果我放入宽度为1px的图像,则无法使其工作。我正在寻找的是这样的:
<image> | <Image> | <image> | <flex space> | <image> | <Image> | <image>
虽然我不希望创建与他们|
的形象,所以我有一个形象地说,就是在|
分离。当添加那个Button时,我无法弄清它们之间的差距。我摆弄框架和插图值无济于事。
这是我为更广泛的按钮:
-(id)initWithTitle:(NSString *)title normalImage:(UIImage *)normalImage highlightedImage:(UIImage *)highlightedImage selectedImage:(UIImage *)selectedImage target:(id)target action:(SEL)action {
button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:normalImage forState:UIControlStateNormal];
[button setImage:highlightedImage forState:UIControlStateHighlighted];
[button setImage:selectedImage forState:UIControlStateSelected];
[button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
[button setFrame:CGRectMake(0, 0, 74, 48)];
// This is the code that seemed to make it work
// Though not 100% sure why
// - - - - -
UIEdgeInsets buttonInset = UIEdgeInsetsMake(0, -5, 0, -5);
button.contentEdgeInsets = buttonInset;
[button sizeToFit];
button.autoresizingMask = UIViewAutoresizingNone;
// - - - - -
buttonLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 30, 74, 17)];
buttonLabel.opaque = NO;
buttonLabel.backgroundColor = [UIColor clearColor];
buttonLabel.font = [UIFont systemFontOfSize:12.0f];
buttonLabel.text = title;
buttonLabel.textAlignment = UITextAlignmentCenter;
[button addSubview:buttonLabel];
[buttonLabel release];
// create a UI
self = [super initWithCustomView:button];
[self setStyle:UIBarButtonItemStyleBordered];
return self;
}