3

为 iOS 应用程序设置主题/皮肤的一些最佳实践是什么?

例子:

  • 使用自定义图像作为屏幕背景。
  • 修改 UITableView 表的外观。
  • 具有自定义外观的按钮。

链接到好的教程是一个加号。

4

6 回答 6

6

您可以创建一个协议,定义返回特定主题颜色、图像等的方法。所有符合此协议的类都必须实现这些方法。

@protocol MyCustomThemes <NSObject>
-(UIFont*)writingAreaFont;
-(UIColor*)dataCellLabelColor;
-(UIImage*)dataCellBackgroundImage;
@end
于 2012-11-25T03:11:17.180 回答
2

您可能会看一下NUI,它可以让您非常轻松地修改应用程序的主题/皮肤,并将该主题也保存给其他应用程序。

例如,如果您想为所有 UIViews 的背景使用自定义图像,您只需将以下内容放入 NUI 样式表中:

ViewBackgroundImage    String    MyImage.png

NUI 也支持 UITableViews 和 UIButtons 的样式(如其他示例中所述)。

于 2012-11-30T02:40:02.103 回答
2

我可以建议:

  1. 制作主题课
  2. 使函数返回背景图像
  3. 使函数返回数据单元格。
  4. 在主题类中创建任何所需的功能。

init 函数应该有一个参数到 plist 文件,其中包含您的类正常工作所需的资产(图像)。它应该是一个 plist 文件,其中包含预定义键的字典。

我希望这会有所帮助。

于 2012-11-25T03:16:15.080 回答
2

您可能想查看Freestyle。它基于Pixate 构建,并使用结构化的 Sass 为您的应用程序设置样式。您只需更改变量值即可创建一个新主题,或者通过 CSS 或 Sass 扩展和自定义它。

于 2014-01-15T00:29:42.690 回答
2

老问题,但仍然 - 如果您正在寻找最佳实践,那么UIAppearance可能就是它。

但是,如果您正在寻找一种更强大的方式来为您的应用程序设置样式(并创建主题) - 也可以看看InterfaCSS。InterfaCSS 使用受 CSS(和 Less/Sass)启发的样式表,支持丰富的选择器语法并允许您使用标准的 UIKit 属性名称。

于 2015-09-01T22:35:55.000 回答
1

我知道这可能为时已晚,但我偶然发现了一个名为Pixate的主题框架。Pixate 允许您使用 css 为所有组件设置主题。它是原生的,意味着没有 web 视图,什么不是,而且它很容易在现有项目中实现。一探究竟。

于 2013-12-30T23:14:14.873 回答