在视图出现之前未设置 UIButton 标题

Posted

技术标签:

【中文标题】在视图出现之前未设置 UIButton 标题【英文标题】:UIButton title not set until view appear 【发布时间】:2019-02-18 09:15:26 【问题描述】:

我用UITextViewUIButton 创建了一个输入工具栏。 只需固定到屏幕底部。像这样:

    override var inputAccessoryView: UIView? 
        return commentToolbar
    

    override var canBecomeFirstResponder: Bool 
        return true
    

当我从其他视图控制器推送时。 UIButton 的标题在视图完全出现之前不会出现。

我想知道如何设置标题以使其在控制器刚开始推送时出现。

演示项目:https://www.dropbox.com/s/7k04xum12iv4bnn/BlinkSendButton.zip?dl=0

运行该演示应用程序。点击一个单元格以推送新的视图控制器。在视图完全出现之前,您将看到没有设置为 UIButton 的标题。

【问题讨论】:

能否详细解释一下 正是您想要在这里实现的目标,因为当您单击单元格时,您一次又一次地推送相同的ViewController @ios 团队为此演示应用添加了 GIF。推送时可以看到标题不设置。 【参考方案1】:

只需添加...

inputAccessoryView?.snapshotView(afterScreenUpdates: true)

在 ViewController 的 viewDidLoad 中。

顺便说一句,这个问题也出现在其他人身上。我在这里找到了解决方案:https://***.com/a/36548797/8932493

【讨论】:

以上是关于在视图出现之前未设置 UIButton 标题的主要内容,如果未能解决你的问题,请参考以下文章

创建类似于 UIButton 的 adjustsImageWhenHighlighted 效果的调整后图像

Swift:在自定义视图中未调用 UIButton 触摸事件

带有空名称/标签的 Uib 下拉菜单未打开

避免 UIPickerView ios 上的 UIButton 覆盖

uibarbutton 项目未显示 uibutton

快速,旋转图像视图并将旋转的图像视图设置为 uibutton