2009-07-28 6 views
0

私はシングルトンクラスを開発し始めましたが、問題があります。 私がしたいのは、いくつかのビューで使用できる検索フォームの値を含む検索オブジェクトです。 検索を実行したり、検索フォームを作成したりするために、どのビューでもシングルトンを取得できます。 は、だから私は、変数がユーザーによって初期化されたかどう知るためにそれぞれのブールと値のセットを持っている、いないすべての検索フィールドを引き起こすことに充填する必要があります例えば私のシングルトンを使用する最良の方法

:。

NSString name= Bob; 
BOOL nameFilled =True; 

NSString adress= nil; 
BOOL adressFilled=false; 

NSNumber numberOfChilds = 0; 
BOOL numberOfChildsFilled = false; 

私の問題は、クラスではないので、私のヘッダーファイルにブール値を保持できないということです。 どうすればいいですか?私が上に示したものより良い解決策はありますか? 私はあなたが、なぜそれがそう

代わり
if(name==nil) 
    //this means i t hasnt been initialized 
else 

    //this means it has 
+1

それを削除!、ナーちょうどジョセフ。 –

答えて

0

のようなものが初期化されているかどうかを確認するために、オブジェクト自体を使用しない、それが満たされているかどうかを確認するには、このブール値を持っている必要がいけない

+0

オハイオ州のそれはスマートなアイデアです – Mathieu

2

明らかにされている希望intを使用するには、NSNumberを使用します。次に、指定されていないオブジェクトに対しては、値として0を持つNSNumberとは異なる 'nil'を使用します。

Objective-Cでは、BOOLや他のプリミティブ型は必要ありません。オブジェクト型にのみ使用する必要があります。

0

真剣に、シングルトンを実装しないでください。このアプリケーションでは必要ありません。これを処理するモデルクラスが必要です。

依存性注入および/またはplistファイルを使用して情報を保存してみてください。デバッグと機能拡張の時間がはるかに短くなります。

+0

"モデルクラス"とは何ですか?私はこの用語に精通しているとは言えません。 – Dinah

+0

私はあなたが何を意味するか本当にわかりません – Mathieu

+0

あなたのモデルデータをカプセル化する単なるクラスです。辞書やその他のインスタンス変数内のデータを保持できます。 –

関連する問題