iOS开发栈 - 专注于分享iOS开发相关知识

关注公众号【iOS开发栈】及时免费获取更多iOS开发知识

0%

有一些国外的书籍没有引入国内更没有翻译,甚至都找不到PDF版本,这些书籍中有一些提供了免费的在线版本,可以通过访问网站来阅读整本书。

但是通过网站阅读在线版本在体验上要差很多,关键是不能进行写写画画。这时候就到发挥技术人员的专长的时候了——把在线版本制作成电子书

阅读全文 »

Xcode在提供给开发者方便好用的自动国际化方案的同时也提供了手动管理多语言文件的方案,手动管理方案虽然使用步骤更多但是更好理解。

这篇文章主要包括下面几点方面:

  1. 怎么创建每个语言对应的文件夹和文件夹里面包含的文件
  2. genstrings工具的使用方法
  3. 使用ibtool更新xib、storyboard的多语言文件
阅读全文 »

这篇文章深入探究一个iOS开发过程中经常会看到的一个属性,这也是我自己在开发过程中碰到的一个用了我几个小时才解决的问题。

主要涉及到Opaque和Clears Graphics Context(clearsContextBeforeDrawing)两个View属性:

  1. opaque view和non-opaque view
  2. Clears Graphics Context是什么和它的作用
阅读全文 »

作为一门非常强调类型安全的语言,为了让程序员尽量少犯错误,Swift在编译时会进行尽量多的类型检查,因此在设计之初就决定了Swift不能像其他某些语言(比如Objective-C)一样具有很强的动态特性。这篇文章要说的KeyPath就是为了类型安全而生的特性之一。

下面主要包括这几个方面的内容:

  1. Keypath是什么
  2. KeyPath的作用,也就是为什么要使用Keypath
  3. KeyPath的使用示例
阅读全文 »

在SwiftUI框架中使用很多的注解,虽然使语法看上去非常简洁,但是增加了初学者的理解难度,这篇文章我们来看一下@ViewBuilder的相关知识。主要包括以下内容:

  1. resultBuilder/functionBuilder是什么以及用法
  2. ViewBuilder结构体
  3. @ViewBuilder修饰符的用法
  4. 使用@ViewBuilder完成一个自定义视图
阅读全文 »