【问题标题】:Add a label in UIAlertController?在 UIAlertController 中添加标签?
【发布时间】:2016-05-23 16:06:09
【问题描述】:

我知道您可以添加一个文本字段,但是否可以为UIAlertController 添加标签?

alertController.addTextFieldWithConfigurationHandler({(textField: UITextField!) in
            textField.placeholder = "Hyperlink"
            inputTextField = textField
            inputTextField?.text="www.google.com"
        })

^^文本域

【问题讨论】:

  • 你能说明你需要哪种类型的输出
  • 为什么要添加自定义标签?
  • 我正在尝试添加一个超链接网址,我知道如何使用标签
  • @Snorlax 我知道它并没有真正回答这个问题,但是您能否将超链接显示为警报消息,然后添加一个打开 URL 的操作?

标签: ios swift uialertcontroller


【解决方案1】:

有适合​​你的功能:

  func showAlertWith(withLabel: String) {
    let alert = UIAlertController(title: "Hello!", message: "Hi everybody!\n", preferredStyle: UIAlertController.Style.alert )
    let action = UIAlertAction(title: "Ok", style: .default)
    alert.addAction(action)
    
    present(alert, animated: true, completion: {
      //  Add your label
      let margin:CGFloat = 8.0
      let rect = CGRect(x: margin, y: 72.0, width: alert.view.frame.width - margin * 2.0 , height: 20)
      let label = UILabel(frame: rect)
      label.text = withLabel
      label.textAlignment = .center
      label.adjustsFontSizeToFitWidth = true
      label.minimumScaleFactor = 0.5
      alert.view.addSubview(label)
    })
  }

alert里面label的坐标和选项我没太在意,但是我觉得大体的意思你已经很清楚了。

【讨论】:

    【解决方案2】:

    这可能会以更简单灵活的方式解决您的问题。 https://github.com/wimagguc/ios-custom-alertview

    从 iOS7 开始,UIAlertView 中的 addSubview 不可用。此类的视图层次结构是私有的,不得修改。

    作为一种解决方案,此类创建一个 iOS 样式的对话框,您可以使用任何 UIView 或按钮对其进行扩展。动画和外观也被复制,不需要图像或其他资源。

    【讨论】:

    • 始终欢迎提供指向潜在解决方案的链接,但请add context around the link,以便您的其他用户知道它是什么以及为什么存在。始终引用重要链接中最相关的部分,以防目标站点无法访问或永久离线。考虑到仅仅是指向外部站点的链接是Why and how are some answers deleted? 的一个可能原因。
    • @FelixSFD 你通过链接了吗?那里有描述和屏幕截图。我不知道为什么它被标记为负面?
    • 请仔细阅读我的评论并看看这个元帖子:meta.stackexchange.com/questions/8231/…
    • 仍然不需要将其标记为否定,因为提供的答案是正确的和描述,并在链接中提供。提出的问题是一个小而简单的api,因此作为答案。
    • 如果能贴出一个使用这个api解决原始问题的示例代码就太好了
    猜你喜欢
    • 1970-01-01
    • 2016-04-02
    • 1970-01-01
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多