2011-02-05 13 views
0

私はView Controllerの1つでNSMurableArrayが設定されている(潜在的に変更されている)TabBarコントローラを使用するアプリケーションを構築しています。次に、同じ配列を使用して、選択されたときに他のビューの1つに表を移入する必要があります。私はシングルトンを使って調べましたが(すでにこのウェブサイトでこの質問の答えとして提供されていたように)、運があまりありませんでした。ビューコントローラ間で配列を渡す必要はありますか?

シングルトンは最善の方法ですか、それとももっと良い方法がありますか?可能であれば、どんなヘルプや例もありがたいですか?

答えて

1

あなたがここに、これを行うためのいくつかのオプションを持っているが2 ...

1)は、他の1はviewController1.mutableArrayと同じようにアクセスできるようにNSMutableArrayのは、1つのビューコントローラのプロパティも持っています。 viewControllerクラスに任意の名前を使用して@property (nonatomic, retain) NSMutableArray *mutableArrayを追加するだけです。

2.)最初のviewControllerのメソッドからもう一方の配列に渡し、その配列への参照を他のクラスに保持します。あなたの助けのための

+0

ありがとうございましたNitrexは、私にとって最も理にかなっていると思われる最初の提案を参照して、2番目のView ControllerからView Controllerへの参照を取得する方法がわかりません。 – Nathan

+0

別の答えの中で言及しているように、インタフェースビルダーのIBOutletとして接続することができます(これには多くのチュートリアルがあります)。 – Nitrex88

0

コントローラーにui要素を接続するのと同じように、コントローラーを互いに接続することができます。たとえば、変数を宣言する

IBOutlet ReferencedController *referencedMenu; 

次に、参照元と参照元のコントローラの間に線を描画します。

私はあなたを正しく理解していますか?

0

おかげで、最後にこれは私がそれを行っている方法です。

のUIViewController * tmpNamesListVCは= [self.tabBarController.viewControllers objectAtIndex:1]; self.names = [tmpNamesListVC names];

ビルド時に、「UIViewControllerが-namesの警告に応答しない可能性がありますが、すべてがコンパイルされて実行される必要があります。