当前位置: 首页 > news >正文

资金盘网站开发公司哪里好电商seo

资金盘网站开发公司哪里好,电商seo,学做文案的网站,方案 网站原文链接 上周公众号发布的以下文章: 一些 RxSwift 思考题CocoaPods 都做了什么?初步探索LaunchScreen使用 Metal 和 Core ML 评价照片质量本期知识小集的主要内容包括: 使用 Named UIColorDiff:/Podfile.lock NO such file or directoryiOS …

原文链接

上周公众号发布的以下文章:

  • 一些 RxSwift 思考题
  • CocoaPods 都做了什么?
  • 初步探索LaunchScreen
  • 使用 Metal 和 Core ML 评价照片质量

本期知识小集的主要内容包括:

  • 使用 Named UIColor
  • Diff:/Podfile.lock NO such file or directory
  • iOS 中的 GZIP 压缩
  • 使用 CaseIterable 获取枚举的所有 case
  • 不可或缺的背景色

使用 Named UIColor

从 XCode 9 开始,我们可以在工程中创建 named color,并在代码或 Storyboard 中使用。要创建 named color,只需要进入 Assets.xcassets 中,点击右键,出现图 1 的菜单,选择 New Color Set,

然后编辑 named color 的名称和色值等信息,如图 2 所示。

在代码中,我们可以直接使用 UIColor(name: "Test")来使用,如图 3 所示。

Diff:/Podfile.lock NO such file or directory

作者: Lefe_x

Pod install 后,运行项目后发现报错,错误提示如图所示。按提示看了下 Podfile.lock 是存在的。试了各种办法,都没有解决(删除 pods 文件夹,重新安装,都不好使)。无奈之下,看了下文件的路径。发现文件路径错了,XXX/Pods/Pods/Target Support Files/xxx,发现文件路径多了个 Pods。这个路径我并没有设置,是 Pod 自己管理的。最后发现在下图的位置中可以配置路径,把这个路径修改成正确的地址就可以了:

iOS 中的 GZIP 压缩

作者:这个汤圆没有馅

当项目中与后端接口交互涉及到大量数据信息的时候,为了提升响应速度需要对传输的数据进行压缩,压缩成功后将 data 转化为 string 传给服务器。

关于 iOS 端的 GZIP 压缩,这是我目前在 github 上找到的 star 数最多的一个:t.cn/RUBP1Le

GZIP 支持 cocoapods,如果手动导入的话,记得在 Targets--Build Phases--Link Binary With Libraries 中添加 libz.1.2.5.tbd。

模拟一万条简单的数据,看看压缩前后数据大小变化。如下图。

经过 GZIP 压缩后,字节量缩小幅度很大。但是压缩后的 data 是无法通过 - (nullable instancetype)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding; 这个方法得到string的。

这个时候我们再来看 java 中对于压缩的数据是如何解压缩的,java 代码如下图。

其中有一行代码为

byte[] compressed = new sun.misc.BASE64Decoder().decodeBuffer(compressedStr);
复制代码

说明 java 是对 base64 的string 进行解压缩的,也就是说我们在进行 data 压缩后,需要传 base64 的string 给服务器。那么只需要加一行代码

[zipData base64EncodedStringWithOptions:0];
复制代码

使用 CaseIterable 获取枚举的所有 case

在写 Swift 代码时,可能需要获取枚举的所有 case,在之前的版本中,我们可能需要自己来实现一个静态方法 allCases,如下代码所示:

enum CompassDirection {case north, south, east, weststatic let allCases = [north, south, east, west]
}
复制代码

而在 Swift 4.2 中,标准库为我们提供了 CaseIterable 协议,可以实现这个需求,如下代码所示:

enum CompassDirection: CaseIterable {case north, south, east, west
}print("There are \(CompassDirection.allCases.count) directions.")
// Prints "There are 4 directions."
let caseList = CompassDirection.allCases.map({ "\($0)" }).joined(separator: ", ")
// caseList == "north, south, east, west"
复制代码

实现 CaseIterable 的枚举在编译器会自动合成 allCases 方法,且 allCases 数组中的元素按 case 声明的顺序。不过如果枚举中的关联值或者 @available 属性,则需要自己重写 allCases,如下代码所示:

enum CompassDirection: CaseIterable {case north, south, eastcase west(Int)static var allCases: [CompassDirection] {return [north, south, east, west(0)]}
}print("There are \(CompassDirection.allCases.count) directions.")
// Prints "There are 4 directions."
let caseList = CompassDirection.allCases.map({ "\($0)" }).joined(separator: ", ")
// caseList == "north, south, east, west(0)"
复制代码

不可或缺的背景色

作者:Vong_HUST

最近遇到两个和背景色有关的坑,和大家一起分享下。第一个页面 A push到页面 B 时,会莫名卡顿。一开始还以为是代码里有耗时操作,然后就一行行屏蔽,屏蔽到什么代码都没有了,还是会卡顿,现在大概就如下图所示。

觉得不可思议,因为 push 到其它页面都不会发生这种情况,最后比对代码发现,其它页面比 B 页面唯一多的一个操作就是设置了 vc.view.background,只要设置了背景色不为 nil 且不为 [UIColor clearColor],就不会出现图中的卡顿感。

另外一种情况就是,如果 collectionView 和 vc.view 背景色都是 nil 或者 clearColor,会出现一种现象就是 collectionView 只能响应有内容区域的点击事件,比如一个 (0, 0, 100, 100) 的 cell 上有一个 (0, 0, 20, 100)的 button,则只有按钮区域是能点击响应事件,其它空白区域(20, 0, 80, 100)的区域点击是不会触发 didSelect 回调的,一旦设置了 vc.view 的背景色,就会恢复正常。

以上两种现象都是由于背景色没有处理妥当,导致页面卡顿或无法响应事件,只要设置了背景色,即可恢复。具体原因还不清楚,有知道的老哥们可以在评论中指点一波~

注:提拉拉拉就是技术宅 大大对此的解释是:不是卡顿,动画本来就是这样子的,后面的vc只推过去一点点。我曾经做过一个app,背景是spritekit的特效,然后整个app 所有vc 都是模态窗口盖在特效上面,背景颜色全部都是clear ,push的动画本身就是这个样子的。

关注我们

欢迎关注我们的公众号:iOS-Tips,也欢迎加入我们的群组讨论问题。可以公众号留言 iosflutter 等关键词获取入群方式。

http://www.wooajung.com/news/34060.html

相关文章:

  • 网站开发研发合同营销活动方案模板
  • 视频网站开发需要什么语言百度图片查找
  • 南京每月做社保明细在哪个网站查如何做一个营销方案
  • 深圳公司网站改版通知长沙市seo百度关键词
  • 阿雷网站建设常州百度推广代理公司
  • 如何做小程序微信搜索引擎优化指的是什么
  • 阳谷做网站百度下载安装 官方
  • 长沙建设教育网官网如何做seo搜索引擎优化
  • 做网站设计的平台自己开平台怎么弄啊
  • 卧龙区2015网站建设口碑百度平台商家我的订单查询
  • 做网站点企业网络搭建方案
  • 做网站主要注意些什么排行榜哪个网站最好
  • wordpress百家seo与sem的关系
  • 个人做的卖货网站seo查询官网
  • 微网站制作工具请简述网络营销的特点
  • 武汉做网站公司有哪些湖南网站建设效果
  • 做发包业务网站湖南长沙最新疫情
  • 网站优化内链怎么做bing搜索 国内版
  • 怎样给网站做图标第三方营销策划公司有哪些
  • 抖音的电子商务网站建设怎么建立网站的步骤
  • 网站的弹窗对话框怎么做网络推广工具
  • 云网站制作的流程文明seo技术教程网
  • 做网站要sql 数据库名字账号密码杭州优化seo
  • 北京网站建设怎么样百度问答下载安装
  • 销售网站开发实践报告seo怎么做关键词排名
  • 快速做网站教程友情链接联盟
  • 房产机构网站建设yoast seo教程
  • 做淘宝客网站用什么系统百度官方网首页
  • 租号网站怎么做吸引人气的营销方案
  • 专业定制网站建设公司建站流程新手搭建网站第一步