我在创建iOS应用程序方面相当新,我对有关中心文本和文档的常见做法有疑问。项目中的颜色样式。
我想要做的是定义一个自定义的“Header”样式,自定义“ToolBar”样式,自定义“Body”样式等,并在我的项目中的不同UIControlViews中使用它们。
我希望能够更改其中一种样式,以便使用该样式的每个对象进行相应调整。
据我所知,在设计iOS应用程序时没有类似CSS的样式文件。
我想要做的是创建一个Swift文件,其中我的样式以某种方式定义为常量,并在viewDidLoad
的所有UIViewController
方法中添加代码块,用于设置相关对象的样式通过使用这些常量。
有没有更好的方法,或者做这种事情的常见做法是什么?
答案 0 :(得分:4)
许多类都有协议UIAppearance
,它设置了默认属性,如font,textColor,backgroundColor等。
例如:
UIButton.appearance().backgroundColor = UIColor.redColor()
答案 1 :(得分:2)
正如您所说,创建一个包含您的配置的configuration.swift文件,并根据配置返回一个视图,然后使用此配置创建自定义视图。这是我在上一个应用程序中的方式。另外,请检查此代码段以真正了解我所说的http://www.objc.io/snippets/20.html
答案 2 :(得分:0)
了解视图控制器多态性和视图控制器层次结构。
在UITableViewController
上设置“父”视图控制器,并包含您的常用属性和方法。
然后将所有“子”视图控制器基于该“父”。
例如,在目标C中:
“父”视图控制器头文件...
#import <UIKit/UIKit.h>
@interface MyParentTableViewController : UITableViewController
@end
“子”视图控制器头文件...
#import <UIKit/UIKit.h>
@interface MyChildTableViewController : MyParentTableViewController
@end
因此,通过这种方式,父级的所有公共属性和方法都可供子级使用,并且只需在父实现文件中写入一次。
答案 3 :(得分:0)