UIBarButtonItem 占据 UIToolbar 的整个宽度

Posted

技术标签:

【中文标题】UIBarButtonItem 占据 UIToolbar 的整个宽度【英文标题】:UIBarButtonItem Taking Entire Width of UIToolbar 【发布时间】:2011-04-29 19:25:24 【问题描述】:

我在 Interface Builder 中创建了一个 UIToolbar 和一个 UIBarButtonItemUIBarButtonItem 是一个包含自定义图像的带边框按钮。

按钮占据了工具栏的整个长度。我尝试过使用不同的图像,改变按钮的宽度......我不知道还能做什么。它横跨整个工具栏。

如果我使用提供的“标识符”(相机、垃圾箱、撰写...),则按钮显示为正常大小。

它在 Interface Builder 中的外观

我在 iPhone 上运行时的样子

解决方案

经过更多修改后,我发现:如果我创建一个新的 UIToolbar 并将自定义图像添加到 UIBarButtonItem,它工作正常 - 但只要我将 UIBarButtonItem 连接到 IBOutlet,它就会变大。然后我必须通过 IBOutlet 在代码中指定 UIBarButtonItem 的宽度。

【问题讨论】:

【参考方案1】:

尝试在相机边框项的右侧添加一个 UIBarButtonSystemItemFlexibleSpace。

【讨论】:

【参考方案2】:

我不是专家,但我认为这可能与“尺寸检查器”中框架的定义方式有关,您能否显示设置的屏幕截图?

【讨论】:

所有值都为零。如果我更改值,则不会更改。 自动调整大小设置怎么样?两边各有红条的两个正方形。 UIBarButtonItem 没有自动调整大小设置。只是宽度和图像插入顶部/底部/左侧/右侧。 我刚刚创建了一个示例,并将为您发布一些屏幕截图。 它不允许我上传我的图片。所以我会口头给你设置:UIToolBar: Frame Rectangle, X=0 Y=436, Width=320 Height=44, Autosizing: left, bottom, right, width都被选中了。排列:位置视图。 UIBarButtonItem: 一切都设置为 0

以上是关于UIBarButtonItem 占据 UIToolbar 的整个宽度的主要内容,如果未能解决你的问题,请参考以下文章

带有图像的 UIBarButtonItem 不显示

在 KeyboardDidShow 上切换 UIBarButtonItem

UIBarButtonItem 有颜色?

UIBarButtonItem 太宽 [重复]

新浪微博客户端-封装UIBarButtonItem

如何获取 UIBarButtonItem 的嵌入按钮