1、定義系統私有屬性時,無法賦值,可以采用KVC的方式直接個成員變量賦值。例如我們想自定義一個tabBar,系統的tabBar屬性是只讀的不可直接修改
319C8A8B-713D-4786-B4B8-7B0EC95F3164.png
我們無法直接使用self.tabBar,這是我們可以用KVC的方式:
[self setValue:[ZRTabBar alloc]init forKeyPath:@"tabBar"]
直接將我們自定義的tabBar賦值給成員變量。2、在我們給自己定制的控件布局的時候,一定要在
- (void)layoutSubviews{ [super layoutSubviews]; }
中布局才有效。3、當我們定制的控件具有同種相同屬性時,并且設置這個屬性的方法說明中帶有appearance這個詞時,可以直接獲取到appearance這個屬性,然后統一設置。例如tabBarItem:
Paste_Image.png