Swift 4:更快交付iOS项目的提示

在担任iOS开发人员近两年后,我考虑过构建代码块,这将有助于我更快地开发任何项目。 这些代码块将满足最常见的要求,例如:导航,网络层,自定义字体,颜色等。使用这些代码块将为您节省一些时间和精力。


自定义字体

当您写label.font = UIFont(name: "foo", size: 12)! 每次您要使用字体时,您都会遇到打字错误,并且如果字体已更改,将花费更多时间编辑代码。 相反,您可以利用扩展功能。

延期:

用法示例: label.font = UIFont.foo(size: 12)


色彩

每次需要使用时都要设置彩色RGB值,这将导致一些类似于自定义字体的困难。 同样,我们可以使用扩展!

延期:

用法示例: label.color = UIColor.foo就是这样!


通知中心名称

为了避免在使用通知名称时出现拼写错误,您可以创建一个扩展来保存项目中的所有名称:

延期:

用法示例: NotificationCenter.default.post(name: .foo, object: nil)


查看控制器名称

以编程方式在视图之间导航时,通常将需要目标视图控制器名称。 再次! 为了避免输入错误并避免冗余代码,我们使用扩展名。

延期:

用法示例: self.window?rootViewController = UIStoryboard.main.foo


弦乐

字符串与很多事情有关! 其中很多,您将需要在一个项目中多次使用。 我准备了一些有用的代码,但是您可以添加任何东西以满足您的需求。

延期:

用法示例:

 让urlString =“ https://medium.com" 
urlString.openURL()
https://medium.com"
urlString.openURL()

快讯

警报可以以多种不同方式和不同需求使用。 下列课程将帮助您使用两行代码来创建和显示警报。

类:

用法示例:

  let alert = Alert.createWithAction(title:“ title”,msg:“ message”,actionTitle:“ confirm”){print(“敲击确认按钮”)} self.present(提示,动画:true,完成:nil) 

本节将在Alamofire和SwiftyJSON库的帮助下为您提供网络层的框架。 您可以将代码用作构建网络层的起点。

安装所需的库之后,我们将构建一个通用类来处理所需的API请求类型(例如:GET,POST,PUT和DELETE)

类:

用法示例:每次需要使用API​​时,只需调用前面的静态方法之一,并传递所需的参数即可: Service.getService(url: "https://baseURL.com/foo") { (response) in print(response) }


希望您现在知道如何使用扩展和自定义类。 在这里,您可以使用之前的代码块进行修改,或者创建新的代码块以满足您的需求。

希望有帮助!