2017-04-10 15 views
0

假设我想为我的应用使用不同的字体,不同的字体大小和不同的配色方案,假设我想使用Interface Builder。如何在xamarin.ios应用中进行造型/主题

我希望能够到样式的所有这些在一个地方,而不是说要每个标签上界面生成器和改变其字体,颜色等

什么是实现这一目标的最常用的方法是什么?

我知道你可以在代码中设置这些东西,但是我看不到Interface Builder中的更改?

有了这些个都是一个改变是一个维护的噩梦,我似乎无法找到任何简单的方法,直接在Interface Builder创建自定义样式。

我能想到的是继承这些视图,如标签,按钮等,每个创建XIBs,并让他们@IBDesignable的唯一途径。

这是要走的路吗?感觉这只是一些不必要的工作,对于简单的事情来说。

回答

0

如果要更改UIKit控件的简单属性,可以使用UIAppearance

随着UIAppearance,您可以为几乎所有的UIKit控件改变外观像,文字颜色,Backgorund颜色,Tintcolor等。

为前: 变化的UIButton的标题颜色外观:

UIButton.Appearance.SetTitleColor (UIColor.Brown, UIControlState.Normal); 

变化UILable的背景颜色外观

UILabel.Appearance.BackgroundColor = UIColor.Blue; 

好吧,如果你想长期定制它未来LEVEL-唯一的办法是像你在你的问题中解释的子类化控件的过程

+0

我不希望所有的UIButton或UILabel具有相同的样式..例如一些标签可以是一个页面的标题,而其他标签只是一个文本...我可能想要一个标签,显示为错误,以红色显示,警告显示为橙色。 – Sharath

+0

,只有当应用程序不在故事板中运行时才能看到这些更改 – Sharath

+0

基本上我应该能够根据某些分组定义标签的属性 – Sharath