OGeek|极客世界-中国程序员成长平台

标题: ios - 在具有透明背景的 Alert ViewController 中心添加图像 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 19:20
标题: ios - 在具有透明背景的 Alert ViewController 中心添加图像

如何在警报 viewController 的中心显示图像,警报 viewController 的背景是透明的。 我写了以下代码。

let image = UIImage(named: "ic_no_data")
        let imageView = UIImageView(frame: CGRectMake(220, 10, 40, 40)
        let alertMessage = UIAlertController(title: "image", message: "", preferredStyle: .Alert)

        let backView = alertMessage.view.subviews.last?.subviews.last
        backView?.layer.cornerRadius = 10.0
        backView?.backgroundColor = UIColor.lightGrayColor()

        alertMessage.view.addSubview(imageView)

        let action = UIAlertAction(title:"", style: .Cancel, handler: nil)
        action.setValue(image, forKey: "image")
        alertMessage .addAction(action)
        self.presentViewController(alertMessage, animated: true, completion: nil)

看起来像这样。

enter image description here

请帮我解决这个问题,谢谢大家。



Best Answer-推荐答案


UIAlertController 不支持 View 层次结构中的此类更改,您最好使用模仿 UIAlertController 行为的自定义可扩展组件。 UIAlertController 的问题在于你不知道 Apple 将如何在下一个 iOS 版本中更改其 View 层次结构。而且每次他们更改某些内容时,您都必须为特定版本的 iOS 添加代码,从可维护性的角度来看,这确实很糟糕。

例如 CustomIOSAlertView:https://github.com/wimagguc/ios-custom-alertview .

关于ios - 在具有透明背景的 Alert ViewController 中心添加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42973162/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4