我想在工具栏的顶部和中心显示按钮。我设置了UIBarButtonItem的图像,但它没有给出如下图所示的预期结果。
我可以添加菜单并找到我
但无法添加请求按钮,如图所示。
请求BUtton是一个图像,当我将它设置为UIBarButtonItem图像时,它会被拉伸
请帮助
这就是我所做的。
但我想这样做。正如您可以看到,在我的解决方案中,“请求”按钮位于工具栏下方,在下面的图片“请求”按钮位于顶部。
答案 0 :(得分:21)
只需将UIBarButtonItem
与FlexibleSpace
添加到这两个按钮的两侧,如下所示..
UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
使用两个按钮查看所有代码..
UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
UIBarButtonItem *locateMe = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonItemStylePlain target:self action:@selector(locateMe:)];
UIBarButtonItem *request = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonItemStylePlain target:self action:@selector(request:)];
UIBarButtonItem *menu = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonItemStylePlain target:self action:@selector(menu:)];
NSArray *toolbarItems = [NSArray arrayWithObjects:locateMe,flexibleSpace,request , flexibleSpace, menu];
[toolBar setItems:toolbarItems animated:NO];
从XIB
开始,您也可以在下面的图片中设置此UIBarButtonSystemItemFlexibleSpace
..
更新:您要在UIToolBar上添加带有该图片的请求按钮,然后在UIImageView
上添加UIToolBar
后添加UIView
和按钮吼叫..
[self.view bringSubviewToFront:imgView];
[self.view bringSubviewToFront:btnRequest];
答案 1 :(得分:3)
从Nib使用UIToolbar
对象上的灵活空间项。像贝娄图像: -
对于添加中心按钮Bigger然后ToolBar Hight然后检查此下面的演示并使用其'类别执行此任务只需将图像拖动到演示并将图像名称更改为CenterButtonIconPaw.png并检查: -
https://github.com/el-eleven/EEToolbarCenterButton
使用你想要的图像我看起来像你的需要: -
答案 2 :(得分:0)
快速版本
let flexibleSpace = UIBarButtonItem(
barButtonSystemItem: .flexibleSpace,
target: nil,
action: nil)
let locateMe = UIBarButtonItem(
barButtonSystemItem: .plain,
target: self,
action: #selector(locateMe))
let request = UIBarButtonItem(
barButtonSystemItem: .plain,
target: self,
action: #selector(request))
let menu = UIBarButtonItem(
barButtonSystemItem: .plain,
target: self,
action: #selector(menu))
let items = [locateMe, flexibleSpace, request, flexibleSpace, menu]
setToolbarItems(items, animated: false)