首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Swift中显示文档目录中的贴纸

如何在Swift中显示文档目录中的贴纸
EN

Stack Overflow用户
提问于 2017-11-21 05:59:40
回答 1查看 395关注 0票数 1
代码语言:javascript
复制
    DispatchQueue.main.async
        {
            var x : Int = 0
            for item in self.arrGifs
            {
                let gif : GIF = item as! GIF
                let gifName = URL(string: gif.gifImage)?.lastPathComponent
                // let ur
                let pathUrl = URL.urlInDocumentsDirectory(with: "\(gifName!)").path

                print("image path is =====>", pathUrl)



                //RawImages.xcassets


                // if let url =  Bundle.main.url(forResource:"3", withExtension: "gif")
               //  {
                    print("url is ------>>>> ",url)
                    do
                    {
                        let sticker = try
                      //     MSSticker(contentsOfFileURL: url,localizedDescription: "")
                            MSSticker(contentsOfFileURL: URL(string:pathUrl)!,localizedDescription: "")



                        self.arrSticker.append(sticker)
                    }
                    catch
                    {
                        print(error.localizedDescription)
                    }
               //  }
            }
            self.createStickerBrowser()
    }

对于上面的“MSSticker”(contentsOfFileURL: url,localizedDescription:“”),我可以得到保存在Bundle中的贴纸。但是,如果我直接给出文件的路径,就不会显示贴纸。我正在从api下载imges,保存我的sqlite(图像名)和文档目录中的图像,这样用户就可以脱机查看它。我找不到解决办法。需要帮助谢谢。

代码语言:javascript
复制
     file:///private/var/containers/Bundle/Application/F8FF754B-F012-4B75-AA2E-9FA71846E6AB/Migos%20Lingo.app/PlugIns/MigosLingo.appex/3.gif === this from Bundle and I can view as Sticker

    /var/mobile/Containers/Data/PluginKitPlugin/DE11FB0E-89F9-4A65-917E-B4FEB8CA5470/Documents/111111-1508763742.gif   ===> Document directry and I cannot view as Stickers 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-21 06:22:19

你能试试这个吗。

代码语言:javascript
复制
let documentsPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]

在此之后,请创建url,因为MSSticker创建了带有url路径的贴纸,不要忘记在图像名称后面添加文档路径。在得到图像路径后,只需这样做。

代码语言:javascript
复制
let pathurl =  URL(fileURLWithPath: imagePath!)

现在你可以做贴纸了。

代码语言:javascript
复制
MSSticker(contentsOfFileURL: pathurl, localizedDescription: "hello world")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47406180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档