4

テーマをサポートする iOS Objective-C アプリを作成する必要があります。アイデアは、いくつかの構成コントロール パネルを使用して、次のスキーマに従って、アプリで事前定義されている 3 つの仮想テーマ {redTheme、greenTheme または blackTheme} のいずれかをユーザーが選択できるようにすることです。

1テーマ http://www.timotteo.com.ar/ThemeChart.png

ユーザーは、ビューを見ている間に新しいテーマを選択することもでき、ビューは自動的に再描画されます (ただし、これは基本的な機能ではありません)。また、基本的なテーマ (whiteTheme など) も必要です。テーマは、ビューの背景色だけでなく、UIButtons、UISliders などの画像もカスタマイズします。私の質問は、この問題を解決するのに役立つデザイン パターンはありますか? または、少なくともいくつかの OOP の概念はありますか? どんな方向でも大歓迎です。事前に送信

4

3 に答える 3

2

基本的に、WinterBoard がテーマに使用するアプローチを検討できます。UI 要素の画像名を統一し (たとえば、buttonBackground.png、statusBar.png など)、非画像 (純粋な色) の情報を PLIST ファイルに格納します。各 UI コントロールのキーは次のようになります。

<plist>
<dict>
    <key>ButtonBackgroundColor</key>
    <string>#00ff00</string>
    <key>LabelBackgroundColor</key>
    <string>#007fcc</string>
</dict>
</plist>

など。次に、このパターンに従ってテーマを作成し、アプリで同じイメージ名/カラー キーを使用して UI データをロードしますが、現在の設定 (おそらく NSUserDefaults に格納されている) に基づいて、別のディレクトリからリソース ファイルをロードします。 .

これが役立つことを願っています。

于 2012-05-17T14:41:49.507 に答える
2

あなたが準備した素敵な図からすると、それは戦略パターン (または任意の数の同様のパターン) によく似ています。詳細については、http: //en.wikipedia.org/wiki/Strategy_patternを参照してください。

敬具、
ボー

于 2012-05-17T14:42:08.840 に答える
0

UIAppearance フレームワークにより、ナビゲーション バーと UIControl オブジェクトのこの作業が容易になります

https://developer.apple.com/library/prerelease/ios/documentation/UIKit/Reference/UIAppearance_Protocol/index.html

于 2015-05-27T10:53:34.870 に答える