2011-08-23 13 views
5

私はクライアントから「スキンナブル」なアプリを作成するように求められましたが、その意味がわかりません。 私は狂ったようにグーグルで行きました。私は明確な答えや例を見つけませんでした。iPhoneアプリを「スキンナブル」にする方法は?

誰かがこれについて手掛かりを持っている場合は、任意のヒントをいただければ幸いです。

ありがとうございました。

+6

お客様からの説明を求められたはずです。 – Pepe

+0

私は尋ねました。私はまだレスポンスを得ていませんでしたが、外部から最初にアイデアを得て、より速く理解できるようにすると考えました。 – jorjap

答えて

3

一般的に、このアプリは、どこGUIデザインの大半、iPhoneアプリのために

+0

これはプログラムでどのように行うのですか?少なくとも一般的な考え方は素晴らしいだろう。ありがとう。 – jorjap

+1

参照http://stackoverflow.com/questions/7151608/what-is-the-recommended-method-of-styling-an-ios-app – Jano

0

など、ユーザーが別のカラースキームを持っていますそれぞれのUIのためのさまざまなルックスを選択できるように感じることを意味しますカスタムのナビゲーションバーの背景画像、カスタムボタンのグラフィックス、さまざまなフォント/サイズ/重み、および空白を設定することで、それを実行できます。あなたがiPhone GUIに精通しているデザイナーと作業していることを確認してください(デザイナーと緊密に作業していない場合、これは悪夢になるでしょう)。

私は最近、非常にカスタマイズされたGUIを望んでいるクライアントのためにアプリをまとめました:http://itunes.apple.com/us/app/gogoparis/id428497937?mt=8。 「スキンナブル」アプリにはこのようないくつかのセットがあるため、ユーザーはいくつかの異なるスタイル全体を選択できます。 (私はあなたのクライアントは、莫大なデザインの予算を持っている願っています!)

0

ここに私の記事は、あなたが始めるのに役立つはずです。

What is the recommended method of styling an iOS app?

あなたはライブテーマの変更が必要な場合は、この例では、各テーマはときに通知を投稿できますユーザが別のテーマ(またはスキン)を選択した場合、テーマインスタンス自体を更新することができます。

代わりに、中央のテーマファクトリにマップされたテーマ(NSCFDictionary)の識別子を作成できます。テーマファクトリで使用する特定のビューの識別子の例は、文字列MONImageSelectorTableCellThemeIdentifierです。

すべてのテーマの負荷を処理し、テーマへの参照を販売する例管理/工場:それを超え

@interface MONThemeManager : NSObject 

//... 

- (MONTheme *)themeForCurrentlySelectedSkinForViewWithIdentifier:(NSString *)identifier; 

//... 

@end 

、それはあなたの要件を知らなくても、より詳細にあなたの質問に答えるのは難しいです。アプリのスキニングの実装は、非常に単純なものから非常に複雑なものまでさまざまです。がんばろう。

0

ここではすでにうまく答えていますが、Three20 などのUIツールキットを使用すると、Webページの場合と同じようにCSSを使用してすべてをスキンすることができます。

0

私はこれは古い記事で実現しますが、私は、私は問題:)

はあなたがアプリの3点を考える必要があるスキンを変更できる任意のココアのアプリを作るために私のペニーを共有したいと思った:

1)統一性:これは、すべてのウィンドウで、ビュー(ボタン、テキスト入力などを含む)がアプリ全体に適用される「標準」を持ちたいということです。これはあなたが見る必要がある最初のものです。 iOSとOS XはすでにAppleのデフォルトのシェーディング方法とレイアウト方法を持っていますが、個々のビューやウィンドウなどのドキュメントを参照することができます。

2)パフォーマンス:スキニングなどを使用すると、パフォーマンスは常に独自のdrawRectなどのメソッドを記述するときに問題になります。コードのリンゴは、 'デフォルト'のために既に最適化されているので、あなたがこれをやっている間、アプリケーションのパフォーマンスに注意を払う必要があります。良い例は次のとおりです。グラデーションを使用して画像を使用するか、NSGradientを使用しますか?両方とも、レンダリングにはパフォーマンス上の問題がありますが、2つのうちのどちらが優れているかの質問です。

3)userDefaults:これは、一般に、「スキン設定」を取得する領域ですから。 userDefaultsは、基本的に設定したすべての情報を環境設定ペインに保存する場所です。このことができます

http://mobile.tutsplus.com/tutorials/iphone/nsuserdefaults_iphone-sdk/

希望:

さらにhttp://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/

、ここで使用してuserDefaultsの気の利いた例があります:私はあなただったら

私はそれのクラス参照に見てね!

1

私のプロジェクトで実際に何をしましたか?私は、複数のストーリーボードを使用して、各テーマのUIとUX全体をより詳細に制御できるようにすることに決めました。私はそれらをすべて一緒にリンクさせるマスターストーリーボードを介してプログラムですべてをリンクします。それは私がやったことであり、とてもうまく機能します。パフォーマンスは優れていますが、各テーマに対して高いレベルの細粒度のコントロールを維持します。ストーリーボード上で名前を同じに保つだけで、ヘッダーファイルと実装ファイルを個々のView Controllerで同じにしておくこともできます。

たとえば、自分が開発しているJam-mout(音楽プレーヤー)のアプリケーションの1つに、複数の高品質テーマがあります。 (画像添付)。各テーマには独自のストーリーボードがあります。

関連する問題