从另一个类访问NSMutableData

时间:2011-12-13 11:52:11

标签: objective-c nsmutabledata

好的,我已经在类1的.h中声明了NSMutableData,如下所示

NSMutableData * dataResponse;

@property(强,非原子)NSMutableData * dataResponse;

在第1类的.m中我有@synthezie dataResponse,然后我在函数中给它一些数据。

我想使用我在函数中为其分配的数据访问第2类中的dataResponse。

如何从class 2中的dataResponse获取数据?任何帮助都会很棒。

2 个答案:

答案 0 :(得分:3)

您可以使用帮助程序类访问不同类中的数组。在项目中创建一个NSObject文件。我把它命名为Passing Class

在你的PassingClass.h中

#import <Foundation/Foundation.h>

@interface PassinClass : NSObject
{
  NSMutableData *dataResponsetoPass;
}
+(PassinClass*)sharedString;


-(void)setdataResponsetoPass:(NSMutableData*)data;
-(NSMutableData*)getDataResponse;

在你的PassinClass.m

#import "PassinClass.h"

@implementation PassinClass
@synthesize dataResponsetoPass;
static PassinClass*sharedString;

+(PassinClass*)sharedString
{
 if(!sharedString)
 {
    sharedString=[[PassinClass alloc]init];
  }

  return sharedString;
}


-(void)setdataResponsetoPass:(NSMutableData*)data
{
  dataResponsetoPass=data;
}
-(NSMutableData*)getDataResponse;
{
   return dataResponsetoPass;
}

在你的class1.h中创建这个助手类的实例。

#import "PassinClass.h"
{
  PassinClass*pClass;
}

在class1.m中,使用

设置数据
pClass=[PassinClass sharedString];
[pClass setdataResponsetoPass:Your Data];

在你的class2.m中使用

获取数据
pClass=[PassinClass sharedString];
[pClass getDataResponse];

NSLog [pClass getDataResponse ]进行检查,如果一切顺利,你应该能够将响应数据从1级传递到2级。

答案 1 :(得分:-1)

创建类的实例并使用-mutableByes方法。如果您仍需要更多信息,请查看NSMutableData的类引用,右 here