如何阻止 UIBarButtonItem 文本被截断?
How to stop UIBarButtonItem text from truncating?
我在导航栏中有一个 UIBarButtonItem
,文本标题为 "Save"。当我转换到全屏 UIPopoverController
然后关闭它时,我的 UIBarButtonItem 中的文本被截断为 "S..e"。对于所有其他 segues 和视图,我在返回时没有问题。
我尝试手动更改宽度并设置 "possibleTitles" 以包含长词,但我无法停止截断。
我正在使用自定义字体,如果这会有所不同的话。
尝试使用自定义视图初始化您的 UIBarButtonItem。
[[UIBarButtonItem alloc] initWithCustomView:yourView];
只需确保您的自定义视图具有正确的框架(例如,对于 UILabel ,宽度足以不截断其内容)。一切正常。
可能有用,但是插入到 UIToolbar
中的具有自定义视图(例如:UILabel
)的 UIBarButtonItem
可以采用其内容的固有大小,只要translatesAutoresizingMaskIntoConstraints
设置为 false
。我相信这也适用于 UINavigationBar
:
private let barButtonLabel: UIBarButtonItem = {
let label = UILabel(frame: .zero)
label.translatesAutoresizingMaskIntoConstraints = false
return UIBarButtonItem(customView: label)
}()
我在导航栏中有一个 UIBarButtonItem
,文本标题为 "Save"。当我转换到全屏 UIPopoverController
然后关闭它时,我的 UIBarButtonItem 中的文本被截断为 "S..e"。对于所有其他 segues 和视图,我在返回时没有问题。
我尝试手动更改宽度并设置 "possibleTitles" 以包含长词,但我无法停止截断。
我正在使用自定义字体,如果这会有所不同的话。
尝试使用自定义视图初始化您的 UIBarButtonItem。
[[UIBarButtonItem alloc] initWithCustomView:yourView];
只需确保您的自定义视图具有正确的框架(例如,对于 UILabel ,宽度足以不截断其内容)。一切正常。
可能有用,但是插入到 UIToolbar
中的具有自定义视图(例如:UILabel
)的 UIBarButtonItem
可以采用其内容的固有大小,只要translatesAutoresizingMaskIntoConstraints
设置为 false
。我相信这也适用于 UINavigationBar
:
private let barButtonLabel: UIBarButtonItem = {
let label = UILabel(frame: .zero)
label.translatesAutoresizingMaskIntoConstraints = false
return UIBarButtonItem(customView: label)
}()