所以,这就是我要完成的:
这是一个UINavigationBar
一个UIBarButtonItem
的是它和一个自定义的初始化UIButton
。
基本上是这样的:
UIButton *favoriteButton = [UIButton buttonWithType:UIButtonTypeCustom];
[favoriteButton addTarget:target
action:action
forControlEvents:UIControlEventTouchUpInside];
favoriteButton.frame = CGRectMake(0.0f, 0.0f, 44.0f, 44.0f);
UIImage *backgroundImage = [[UIImage imageNamed:@"favorite-button-background-orange"]
resizableImageWithCapInsets:UIEdgeInsetsMake(0, 2, 0, 0)];
[favoriteButton setBackgroundImage:backgroundImage
forState:UIControlStateNormal];
UIBarButtonItem *favoriteButtonItem = [[UIBarButtonItem alloc] initWithCustomView:favoriteButton];
问题是,我似乎无法得到对的右侧摆脱讨厌的小边框UINavigationBar
。
我试图设置自定义TitleView
如“描述如何删除旁边的UIBarButtonItem填充 ”,但这并没有改变任何事情。
我也尝试添加其他的UIBarButtonItem用负宽度(如在一些相关博客文章我读暗示),但没有帮助。
UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace
target:nil
action:nil];
negativeSpacer.width = -5.0f;
self.navigationItem.rightBarButtonItems = %[favoriteButtonItem, negativeSpacer];
我认为iOS版不会让我改变它,因为“圆角的边框”保留一些(不可避免的?)空间/填充? 所以我的问题是。 我应该如何解决这个限制? 我需要创建一个自定义UINavigationBar
班? 我可以通过修改假货莫名其妙UIBarButtonItem
? 我只是使用了错误的成分?