【问题标题】:UIBezierPath to NSData to Server to AndroidUIBezierPath 到 NSData 到 Server 到 Android
【发布时间】:2015-06-23 08:54:18
【问题描述】:

目前我有一个符合 NSCoding 的类,其中包含 UIBezierPath 和 UIColor。

    required init(coder aDecoder: NSCoder) {
        super.init()
        self.lineColor = aDecoder.decodeObjectForKey("color") as! UIColor
        self.bezierPath = aDecoder.decodeObjectForKey("bezier") as! UIBezierPath
    }

    func encodeWithCoder(aCoder: NSCoder) {
        aCoder.encodeObject(lineColor, forKey: "color")
        aCoder.encodeObject(bezierPath, forKey: "bezier")
    }

我通过 NSKeyedArchiver 实现了这一点

NSKeyedArchiver.archivedDataWithRootObject(path)

并将其保存在服务器上 (parse.com) 我可以在 iOS 上毫无问题地解压它。但是如何兼容安卓呢?

【问题讨论】:

    标签: android ios parsing parse-platform cross-platform


    【解决方案1】:

    我同意韦恩的观点。您可以调用 self.bezierPath.CGPath 来检索 CGPath,然后您可以使用以下答案将其导入 SVG。

    How to convert CGPath to SVG

    然后您可以以中性格式发送它。

    【讨论】:

      【解决方案2】:

      您需要将路径和颜色转换为某种通用格式并以通用格式导出。像 SVG 之类的东西,包括 RGBA 值。 UIBezierPath 和密钥归档是具有私有二进制实现的 iOS 特定项目 - 尝试在 Android 上使用它们会花费你很长时间,而且不会成为未来的证据。

      【讨论】:

        猜你喜欢
        • 2011-03-02
        • 1970-01-01
        • 2011-08-11
        • 2011-08-21
        • 1970-01-01
        • 2010-10-05
        • 1970-01-01
        • 1970-01-01
        • 2014-06-09
        相关资源
        最近更新 更多