何らかの理由で、アプリが最初に起動したときにXMLパーサーにドキュメントを解析させてから、アプリ内の別のクラスでいつでも取得できる配列を初期化する方法について少し混乱しています。たとえば、最初のViewControllerでXML解析クラスを呼び出すと、XMLが解析され、すべてが配列にパックされます。次に、XML解析クラスを呼び出さずに、いつでもその配列を別のクラスで使用できるようにするにはどうすればよいですか?
何か案は?
PS:
私はそれが愚かで無知な質問であることを知っています。おそらく似たようなものがあることは知っていますが、この種のことを行うための最良の方法を確実に学びたいと思います。
質問する
441 次
1 に答える
1
1 つの配列をあるクラスから別のクラスに渡す方法はたくさんあります。以下で説明する簡単な方法の 1 つです。
アプリのデリゲート ファイルで、1 つの NSMutableArray 変数を宣言します。
//appdelegate.h ファイル内
NSMutableArray *arrDataArray;
//ここでプロパティを宣言します
@property (nonatomic,strong)NSMutableArray *arrDataArray;
// appdelegate .m ファイルで配列インスタンスを合成します
@synthesize arrDataArray;
//今、解析を行っているView Controllerで、以下のようにアプリデリゲートファイルの共有インスタンスを宣言します
AppDelegate *objAppDel = (AppDelegate*)[[UIApplication sharedApplication] delegate];
解析結果を arrDataArray に保存します。したがって、objAppDel.arrDataArray は解析結果を保持します。他のビューコントローラー クラスで arrDataArray にアクセスする場合は、再度 appdelegate ファイルの共有インスタンスを宣言し、arrDataArray に objAppDel.arrDataArray としてアクセスします。
于 2013-01-31T04:34:15.787 に答える