【问题标题】:Json feed blob image display in UIImage swiftJson feed blob 图像在 UIImage swift 中显示
【发布时间】:2016-12-16 01:03:29
【问题描述】:

我有一个来自我的 MySQL 数据库的 Json 提要,这对于名称和其他详细信息非常有用,但我也有一个 blob 列,用于存储我想连接到我的故事板中的 UIImage 但我不确定如何获取 blob Json 提要中的数据并解码回 UIImage。我认为数据目前被视为字符串。

我不想使用任何库,那么指向数据库中服务器图像位置(又名 URL)的指针会比 blob 更好吗?大概吧 ?如果是这样,我如何从 Json 提要中显示它?

谢谢

【问题讨论】:

    标签: mysql json swift uiimage blob


    【解决方案1】:

    这里有很多问题。

    1. 图像是如何插入数据库的?
    2. 是否以某种方式编码?
    3. 它是如何检索到的?

    你没有在这里指定答案,所以我假设它是原始图像字节。如果不是这样,请根据需要添加一些编码或解码。

    您可以轻松地将字符串转换为NSData,然后从中创建一个UIImage:

    var imagedatastr:String = "" // assume this is the data you got from MySQL
    
    if let imageData:NSData = imagedatastr.dataUsingEncoding(NSUTF8StringEncoding)
    {
        let image = UIImage(data:imageData,scale:1.0)
    }
    

    【讨论】:

    • 是的,对不起,我通过 Swift 应用程序 / PHP 发布了图像,json 提要返回 image = "Optional(<UIImage: 0x6100002881b0> size {4288, 2848} orientation 0 scale 1.000000)";
    【解决方案2】:

    通常你有一个字符串,然后你会将图像显示到uiimageview中,好的。最后,您考虑使用这样的线程。

    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0))
        {
            let data = NSData(contentsOfURL: NSURL(string: <yourUrlString>)
            var image: UIImage?
            if data != nil {
                artist.vImageData = data
                image = UIImage(data: data!)
            } else {
                image = UIImage(named: <defaultImageLikeNoAvailable>)
            }
    
            dispatch_async(dispatch_get_main_queue()) {
                imageView.image = image
            }
        }
    

    【讨论】:

    • 我无法让任何一个示例在我的 uiimageview 中显示图像 - 示例一个的错误是我不能将它放入 uiimageview 应该是 UIImage 但这不起作用,我不知道调度是什么一个人在做对不起?
    • 还在努力让图像在 UIImageView 中显示任何其他指针吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-28
    • 2017-12-16
    • 2011-06-04
    • 1970-01-01
    相关资源
    最近更新 更多