次の単純なクラス定義があります。
//mycommon.h
@interface CurrentPath : NSObject
@property (nonatomic, strong) NSString* PathString;
@property (nonatomic, strong) NSMutableArray* PathArr;
- (void) addAddressToPath:(NSString*) address;
@end
//mycommon.m
@implementation CurrentPath : NSObject
@synthesize PathString;
@synthesize PathArr;
- (void) addAddressToPath:(NSString*) address{
NSLog(@"addAddressToPath...");
// Add to string
self.PathString = [self.PathString stringByAppendingString:address];
// Add to Arr
[self.PathArr addObject:address];
}
@end
別のクラスでは#import<mycommon.h>
、次のように変数を宣言します。
@interface myDetailViewController :
{
CurrentPath* currentPath;
}
- (void) mymethod;
@end
そして
@implementation myDetailViewController
- void mymethod{
self->currentPath = [[CurrentPath alloc] init];
NSString* stateSelected = @"simple";
[self->currentPath addAddressToPath:stateSelected];
}
@end
問題は、self->currentPath の PathString および PathArr プロパティが、このメソッド呼び出しの後に空になることです。これは、「単純」である必要があると思います。助けてください!