How to show button in center of toolbar?

帅比萌擦擦* 提交于 2019-11-29 18:41:16

问题


I want to show button on top of and in center of Toolbar. I set the image of UIBarButtonItem but it does not give desired result as given in below image.

I am able to add Menu and Locate Me

but could not add Request Button as shown in pic.

Request BUtton is an image and when I set it the UIBarButtonItem image it gets stretched

please help

This is what I have done.

But I want to do this. as You can see that in my solution Request button is under toolbar and in the below pic Request button is on top.


回答1:


just add UIBarButtonItem with FlexibleSpace to both side of these two button like bellow..

UIBarButtonItem *flexibleSpace =  [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];

See all code with two buttons..

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];

From XIB you can also set this UIBarButtonSystemItemFlexibleSpace like in bellow image..

UPDATE: you want to Add that request button with that image on UIToolBar then just bring that UIImageView and button after add UIToolBar on the UIView like bellow..

[self.view bringSubviewToFront:imgView];
[self.view bringSubviewToFront:btnRequest];



回答2:


From Nib use flexible space item on a UIToolbar object. like bellow Image:-

For Adding center Button Bigger then ToolBar Hight then check this bellow Demo and use Its' category for doing this Task just Drag you image into demo and change image name to CenterButtonIconPaw.png and check:-

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

using your image i done as you want It's Look like similar to your Need:-




回答3:


Swift version

    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)


来源:https://stackoverflow.com/questions/17969260/how-to-show-button-in-center-of-toolbar

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!