11

我想在工具栏的顶部和中心显示按钮。我设置了 UIBarButtonItem 的图像,但它没有给出如下图所示的预期结果。

我可以添加菜单并找到我

无法添加请求按钮,如图所示。

请求按钮是一个图像,当我将它设置为 UIBarButtonItem 图像时,它会被拉伸

请帮忙

这就是我所做的。 在此处输入图像描述

但我想这样做。如您所见,在我的解决方案中,请求按钮位于工具栏下方,而在下图中,请求按钮位于顶部。 在此处输入图像描述

4

3 回答 3

21

只需将UIBarButtonItemwith添加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];
于 2013-07-31T11:41:32.467 回答
3

从 Nib在对象上使用灵活的空间项UIToolbar。如下图:-

在此处输入图像描述

对于添加中心按钮更大然后工具栏高度然后检查这个波纹管演示并使用它的类别来执行此任务只需将您的图像拖到演示中并将图像名称更改为 CenterButtonIconPaw.png 并检查:-

https://github.com/el-eleven/EEToolbarCenterButton

使用我按照您的意愿完成的图像看起来与您的需求相似:-

在此处输入图像描述

于 2013-07-31T11:41:32.677 回答
2

斯威夫特版本

    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)
于 2018-10-01T12:41:58.830 回答