Xcode Swift如何将图像添加到UIAlertController选项?

时间:2017-12-19 10:37:00

标签: swift xcode uialertcontroller

我想将图像/图标添加到UIAlertController,就像苹果音乐播放器中的对话框

一样

我想要的彩色/大小的图像/图标如下图所示,而不是像this question里面的那个。我相信它的ios 11+功能,但我无法找到它的文件。

完全像这样:

enter image description here

我可以在UIAlertController中执行此操作,还是应该创建自己的自定义对话框uiviewcontroller

1 个答案:

答案 0 :(得分:5)

 let alert = UIAlertController(title: nil, message: nil, preferredStyle: .actionSheet)            
 alert.modalPresentationStyle = .popover


 let image = UIImage(named: "logoCircle")
 let imageView = UIImageView()
 imageView.image = image
 imageView.frame =  CGRect(x: 25, y: 18, width: 24, height: 24)
 alert.view.addSubview(imageView) 

 let image1 = UIImage(named: "icshare")
  let imageView1 = UIImageView()
  imageView1.image = image1
  alert.view.addSubview(imageView1)
  imageView1.frame = CGRect(x: 25, y: 75, width: 24, height: 24)

 let shareExternal = UIAlertAction(title: NSLocalizedString("Share External Link", comment: ""), style: .default) { action in
        }
 let shareInApp = UIAlertAction(title: "Share within", style: .default)   {
                action in
            } 

  alert.addAction(shareInApp)
  alert.addAction(shareExternal)


    if let presenter = alert.popoverPresentationController
    {
            presenter.sourceView = button
            presenter.sourceRect = button.bounds
    }
    present(alert, animated: true, completion: nil)