• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - UIToolbar - 添加等宽按钮没有间隙

[复制链接]
菜鸟教程小白 发表于 2022-12-11 20:05:20 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有 UIToolbar,我想给它添加大小相同的 UIButtons。 目前,我有:

CGFloat width = self.toolbarMapMenu.frame.size.width / 4.0;
CGFloat height = self.toolbarMapMenu.frame.size.height;

btn0 = [self createMenuButton"a" width:width height:height];
btn1 = [self createMenuButton"b" width:width height:height];
btn2 = [self createMenuButton"c" width:width height:height];
btn3 = [self createMenuButton"d" width:width height:height];


UIBarButtonItem *it0 = [[UIBarButtonItem alloc] initWithCustomView:btn0];
UIBarButtonItem *it1 = [[UIBarButtonItem alloc] initWithCustomView:btn1];
UIBarButtonItem *it2 = [[UIBarButtonItem alloc] initWithCustomView:btn2];
UIBarButtonItem *it3 = [[UIBarButtonItem alloc] initWithCustomView:btn3];

[self.toolbarMapMenu setItems:[NSArray arrayWithObjects:
                               it0,  it1,  it2,  it3,
                               nil]
                            ];

还有其他地方

-(UIButton *)createMenuButton: (NSString *)name widthCGFloat) w heightCGFloat) h
{

    UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
    btn.tintColor = [UIColor whiteColor];

    [btn setImage:[UIImage imageNamed:name] forState:UIControlStateNormal];

    [[btn.widthAnchor constraintEqualToConstant: w] setActive:true];
    [[btn.heightAnchor constraintEqualToConstant: h] setActive:true];
    btn.translatesAutoresizingMaskIntoConstraints = false;

    return btn;
}

但是,当我添加这些按钮时,它们的大小相同,但在第一个/最后一个按钮之前和之后有一个间隙:

类似这样的东西(UIToolbar):

(<gap> btn0 btn1 btn2 btn3 <gap>)

如何消除这个间隙并在工具栏MapMenu 的开头添加按钮?



Best Answer-推荐答案


尝试在每个项目之间添加灵活的空间,它可能会解决您的问题并提供一致的 View 。

// Flexible Space
UIBarButtonItem *flexibleItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];

[self.toolbarMapMenu setItems:[NSArray arrayWithObjects:
                               it0, flexibleItem, 
                               it1, flexibleItem, 
                               it2, flexibleItem, 
                               it3,
                               nil]];

关于ios - UIToolbar - 添加等宽按钮没有间隙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50047323/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap