我想为我的应用程序用户提供几个不同的皮肤用于应用程序,默认的黑色皮肤,然后说一个白色的皮肤。也许允许他们为标题或其他任何地方设置字体和/或字体颜色。
这样做的最佳方法是什么?显然,我不希望这会影响我的申请速度。
答案 0 :(得分:1)
你基本上有3个选择。
UIWebView中的HTML5 + CSS
根据您的需求,最灵活的方式是通过UIWebView
作为HTML5和CSS提供部分用户界面,并让用户(或主题制作者)创建不同的基于CSS的样式。这是大多数应用程序的功能;例如IM +或Colloquy。
通过子类化修改本机控件
Apple可能拒绝修改本机控件和视图的应用程序。如果您想将应用程序提交到App Store,那么这不是一个安全的选项。
创建自己的UIView子类并实现其行为
选项三是使用UIView的子类绘制自己的控件,但这可能比它的价值更多。您可以在iOS上的许多游戏中找到它。
答案 1 :(得分:0)
为了存储和访问构成用户界面的颜色和其他参数等属性,我建议使用简单的东西。
在我的一些应用程序中,我使用的是JSON文件(或者是XML - 但这需要解析更多工作)。 TouchJSON(github.com/schwa/TouchJSON)在将文件简单地转换为易于访问的NSDictionary方面做得非常出色。例如,您可以在这样的文件中存储颜色和字体名称和大小,并在发布时读取其中一个。