1

我想显示带有可点击链接的警报对话框消息。例如,我的消息For more info please visit our website: (I WANT TO PUT LINK HERE FOR USER TO INTERACT)

我怎样才能实现这种事情?

这是我的代码

let dialog = MDCAlertController(title: DialogErrorMessage().errorTitle, message: message)

    dialog.buttonTitleColor = UIColor(red:0.03, green:0.62, blue:0.09, alpha:1.0)

    let okayButton = MDCAlertAction(title: DialogTitleMessage().okayTitle) { (action) in

    }
    dialog.addAction(okayButton)

    dialogPresent(view: dialog)
4

2 回答 2

1

要在您的 custom 中使标签可点击MDCAlertController,您需要执行以下解决方法:

  • 枚举警报控制器中的标签。(alertController是您的 MDCAlertController 实例的名称)

    for (UILabel *label in [alertController.view subviewsOfClass:[UILabel class]]) { //Here you get the **label instance** }

  • 将标签上的点击手势添加为

    let tap = UITapGestureRecognizer(target: self, action: Selector("tapFunction:")) label.addGestureRecognizer(tap)

  • 将标签的用户交互设置为 true

    label.isUserInteractionEnabled = true

完整代码如下:-

for (UILabel *label in [alertController.view subviewsOfClass:[UILabel class]]) {
        label.isUserInteractionEnabled = true
        let tap = UITapGestureRecognizer(target: self, action: Selector("tapFunction:"))
        label.addGestureRecognizer(tap)
    }
于 2019-02-11T16:33:35.540 回答
0

MDCAlertController 现在支持消息中的链接。请参阅: https ://github.com/material-components/material-components-ios/blob/617675f3137259ed0cb0b7ca5875304284d1d2ce/components/Dialogs/src/MDCAlertController.h#L52-L67

旧答案(2020 年 5 月之前):

考虑使用 accessoryView API 将自定义视图附加到对话框,您可以在其中实现所需的功能。此视图可以添加到或完全替换对话框的消息部分,同时保留您实例化对话框的标题和操作。

于 2020-03-29T17:22:23.477 回答