将NSMutableArray传递给另一个视图控制器

niv*_*one -3 iphone xcode objective-c ios4 ios

我试图在两个视图控制器之间传递NSMutableArray.请让我知道我能为此做些什么

在PlaylistViewController.h文件中我有

NSMutableArray *SongArray;
@property(nonatomic,retain)NSMutableArray *SongArray;
Run Code Online (Sandbox Code Playgroud)

我希望传递给另一个视图控制器

Dha*_*ngh 7

您可以通过两种方式分享:

  1. 使用财产

例

在.h文件中

    @interface ABCController : UIViewController
    {
        NSMutableArray *detailArray;
    }
    @property(nonatomic,retain)NSMutableArray *detailArray;
Run Code Online (Sandbox Code Playgroud)

在.m文件中

    XYZController *xyzVC = [[XYZController alloc] initWithNibName:@"XYZController" bundle:nil];    
    xyzVC.detailArray = self.detailArray;

    [self.navigationController pushViewCsecondView:xyzVC animated:YES];


    **XYZController.h**

    @interface XYZController : UIViewController
    {
        NSMutableArray *detailArray;
    }

@property(nonatomic,retain)NSMutableArray *detailArray;
Run Code Online (Sandbox Code Playgroud)
  1. 运用 NSUserDefaults

例

     [[NSUserDefaults standardUserDefaults] setValue:SongArray forKey:@"songArray"];
     [[NSUserDefaults standardUserDefaults] synchronize];

     NSMutableArray *arr = [[NSUserDefaults standardUserDefaults] valueForKey:@"songArray"];
Run Code Online (Sandbox Code Playgroud)


V.J*_*.J. 7

**FirstViewController.h**

@interface FirstViewController : UIViewController
{
    NSMutableArray *SongArray;
}
@property(nonatomic,retain)NSMutableArray *SongArray;

**FirstViewController.m**

SecondViewController *secondView = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];    
secondView.SongArray = self.SongArray;

[self.navigationController secondView animated:YES];


**SecondViewController.h**

@interface SecondViewController : UIViewController
{
    NSMutableArray *SongArray;
}
@property(nonatomic,retain)NSMutableArray *SongArray;
Run Code Online (Sandbox Code Playgroud)