0

基本的に、Signal というクラスがあります。NSObject から継承します。2 つのプロパティがあります。

@property (strong, nonatomic) NSString *title;
@property BOOL *favoriteStatus;

私のアプリケーションはタブ ビュー アプリケーションであり、TableViewControllers を含む 2 つのメイン セクションがあります。今私がやりたいことは、最初の TableViewController のすべてのオブジェクトを表示することですが、2 番目のテーブルではお気に入りのオブジェクトのみを表示します。したがって、両方の TableViewControllers の実装ですべてのオブジェクトをインスタンス化する代わりに、ユーザーがタブを切り替えたときに同じ配列を 2 番目のビュー コントローラーに渡す方法はありますか。

また、次回ロードできるように、どのオブジェクトがお気に入りであるかを保存できる他の方法 (コアデータではない) はありますか?

ありがとう。

4

4 に答える 4

1

シングルトンを作成する代わりに (シングルトンであるオブジェクトが実際に単一のエンティティを表す場合にのみ行う必要があります)、tabbarcontroller をサブクラス化し、その中にプロパティを作成します。このように、配列が変更されると、tabbarcontroller は、tabbar によって定義されたプロトコルを childViewController に実装させることによって、childViewControllers に伝えることができます。

于 2013-09-14T15:38:29.407 に答える
0

prepareForSegue最初の ViewController でメソッドを使用する

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"yourSegueIdentifier"])
{
    NextViewController *nextViewController =
    segue.destinationViewController;
    nextViewController.delegate = self;
    nextViewController.yourArray = yourArray;
}
于 2013-09-14T15:43:46.087 に答える
0

MyObjectsStore などのストア クラスをシングルトンとして作成します。このクラスでオブジェクトをセットアップし、それらを取得するためのメソッドを実装します。次のようになります。

[MyObjectStore sharedInstance].myObjects

1 番目と 2 番目のコントローラーで使用します。

于 2013-09-14T15:32:02.667 に答える