如何在MDCAlertController的消息中添加可点击的链接

时间:2019-02-11 15:37:04

标签: ios swift uialertcontroller material-components-ios

我想显示带有可单击链接的警报对话框的消息。 例如,我的消息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)

2 个答案:

答案 0 :(得分:0)

要使标签在您的自定义old_x中可点击,您需要执行以下解决方法:

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

    alertController

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

    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)

完整的代码如下:-

label.isUserInteractionEnabled = true

答案 1 :(得分:0)

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

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

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