文档章节

UI高级----Images.xcassets

周绪刚
 周绪刚
发布于 2015/09/14 12:06
字数 691
阅读 117
收藏 0

不知道大家有没有遇到过这种错误,这种错误导致的原因是多样的,最常见的是在拷贝的过程中出现的文件损坏.比如在 Mac 和 Window 之间拷贝的时候出现这种错误的概率是最大的,那么出现这种错误的原因大家可以查看下Images.xcassets中的内部文件.通常正常的 Contents.json 文件是一些字典类型的数组,而损坏后的文件通常是些 X 进制类型的文件.

X进制文件如下所示:

6300 0000 6300 0000 0000 0000 ff81 0000
0000 0000 207b 0a20 2020 2020 2022 6964
696f 6d22 203a 2022 6970 686f 6e65 222c
0a20 2020 2020 2022 7369 7a65 2220 3a20
2232 3978 3239 222c 0a20 2020 2020 2022
7363 616c 6522 203a 2022 3278 220a 2020
2020 7d2c 0a20 2020 207b 0a20 2020 2020
2022 6964 696f 6d22 203a 2022 6970 686f
6e65 222c 0a20 2020 2020 2022 7369 7a65
2220 3a20 2234 3078 3430 222c 0a20 2020
2020 2022 7363 616c 6522 203a 2022 3278
220a 2020 2020 7d2c 0a20 2020 207b 0a20
2020 2020 2022 6964 696f 6d22 203a 2022
6970 686f 6e65 222c 0a20 2020 2020 2022
7369 7a65 2220 3a20 2236 3078 3630 222c
0a20 2020 2020 2022 7363 616c 6522 203a
2022 3278 220a 2020 2020 7d0a 2020 5d2c
0a20 2022 696e 666f 2220 3a20 7b0a 2020
2020 2276 6572 7369 6f6e 2220 3a20 312c
0a20 2020 2022 6175 7468 6f72 2220 3a20
2278 636f 6465 220a 2020 7d0a 7d

对于正常的 Contents.json 文件中的内容应该是如下所示:

{
  "images" : [
    {
      "idiom" : "iphone",
      "size" : "29x29",
      "scale" : "2x"
    },
    {
      "size" : "29x29",
      "idiom" : "iphone",
      "filename" : "icon-1.png",
      "scale" : "3x"
    },
    {
      "size" : "40x40",
      "idiom" : "iphone",
      "filename" : "icon.png",
      "scale" : "2x"
    },
    {
      "idiom" : "iphone",
      "size" : "40x40",
      "scale" : "3x"
    },
    {
      "idiom" : "iphone",
      "size" : "60x60",
      "scale" : "2x"
    },
    {
      "size" : "60x60",
      "idiom" : "iphone",
      "filename" : "icon1-2.png",
      "scale" : "3x"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

显而易见,也就是文件被莫名的转换了,那么问题来了,如何将这些文件转换回去呢?小编在这还没有找到一个完美的解决办法,不过小编的通常做法是将images.xcassets 中的所有的文件全部删掉,只添加AppIcon.appiconset和LaunchImage.launchimage(这两个文件夹需要从一个能打开的项目中拷贝过来就 OK)替换掉之前出问题的文件,其余的图片重新导入一遍就 OK 了,这个images.xcassets 在 Xcode 工程中就能打开了.如果大家有能解决上述编码格式莫名相互转换的方法的话希望给我留言,大家共同学习探讨.谢谢.


对于刚接触 iOS 开发的人员来说,推荐大家一个关于images.xcassets 介绍的博客连接地址(老刘,外号刀哥):

http://blog.csdn.net/liufan321/article/details/9121241


著作权声明:本文为作者原创,欢迎转载分享。请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢!


© 著作权归作者所有

周绪刚
粉丝 1
博文 17
码字总数 7469
作品 0
东城
私信 提问
iOS6/7 Images.xcassets的问题

无缓存 imageView.image = [UIImage imageWithContentsOfFile:]; 有缓存 imgaeView.image = [UIImgae imaged:]; 在iOS7中,将图片放入到Images.xcassets,图片可以在Images.xcassets调节水平......

Ethan-GOGO
2015/08/27
329
0
Images.xcassets不能获取图片路径

原文地址:http://www.jianshu.com/p/5358f587af38 Images.xcassets在app打包后,以Assets.car文件的形式出现在bundle中。其作用在于: 自动识别@2x,@3x图片,对内容相同但分辨率不同的图片...

coolwxb
2016/12/08
31
0
IOS 开发UI篇—iOS开发中三种简单的动画设置

一、首尾式动画 // beginAnimations表示此后的代码要“参与到”动画中 [UIView beginAnimations:nil context:nil];//设置动画时长 [UIView setAnimationDuration:2.0]; self.headImageView....

Jack088
2015/10/22
39
1
设置启动页图片

因产品需求,要在圣诞节和元旦期间分别用不同的图片作为启动页,元旦过后还原为之前的图片。一番尝试之后,虽没有很好的完成需求,但做以下总结,希望对读者有所帮助。 普通设置启动页 •方式...

会跳舞的蜗牛
2017/12/22
0
0
实现iOS图片等资源文件的热更新化(一): 从Images.xcassets导出合适的图片

本文会基于一个已有的脚本工具自动导出所有的图片;最终给出的是一个从 Images.xcassets 到基于文件夹的精简 合适 的图片资源集的完整过程.难点在于从完整图片集到精简图片集,肯定是基于一个定...

ios122
2016/09/19
59
0

没有更多内容

加载失败,请刷新页面

加载更多

OpenStack 简介和几种安装方式总结

OpenStack :是一个由NASA和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenSta...

小海bug
昨天
6
0
DDD(五)

1、引言 之前学习了解了DDD中实体这一概念,那么接下来需要了解的就是值对象、唯一标识。值对象,值就是数字1、2、3,字符串“1”,“2”,“3”,值时对象的特征,对象是一个事物的具体描述...

MrYuZixian
昨天
6
0
数据库中间件MyCat

什么是MyCat? 查看官网的介绍是这样说的 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务、ACID、可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵...

沉浮_
昨天
7
0
解决Mac下VSCode打开zsh乱码

1.乱码问题 iTerm2终端使用Zsh,并且配置Zsh主题,该主题主题需要安装字体来支持箭头效果,在iTerm2中设置这个字体,但是VSCode里这个箭头还是显示乱码。 iTerm2展示如下: VSCode展示如下: 2...

HelloDeveloper
昨天
9
0
常用物流快递单号查询接口种类及对接方法

目前快递查询接口有两种方式可以对接,一是和顺丰、圆通、中通、天天、韵达、德邦这些快递公司一一对接接口,二是和快递鸟这样第三方集成接口一次性对接多家常用快递。第一种耗费时间长,但是...

程序的小猿
昨天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部