0

このメソッドを実行するたびに、配列が作成され、初期化されます。まで配列にデータを入力したままにするにはどうすればよいですか

  • 別のビューに移動するか、
  • 別のボタンを選択します (「リセット」と呼びましょう)。

    - (IBAction)addItemToOrder:(id)sender {
      NSMutableArray *arrayOrderItems = [[NSMutableArray alloc]init];
      NSMutableString *stringOrderItem = [[NSMutableString alloc]initWithString:@"Item: "];
      [stringOrderItem appendString:self.labelProductCode.text];
      [stringOrderItem appendString:@" | Qty: "];
      [stringOrderItem appendString:self.textfieldQuantity.text];
      NSObject *myObj = [[NSObject alloc]init];
      myObj = stringOrderItem;
      [arrayOrderItems addObject:myObj];
      self.textviewOrderTotal.text = stringOrderItem;
      NSLog(@"arrayOrderItems: #records: %d", arrayOrderItems.count);
      NSLog(@"%@", arrayOrderItems);
    }
    
4

1 に答える 1

0

配列をインスタンス変数として使用する必要があります。

// MyClass.h
@interface MyClass : NSObject
    @property (nonatomic, strong) NSMutableArray *myArray;
@end

// MyClass.m
@implementation MyClass

- (id)init
{
    self = [super init];
    if (nil != self)
    {
        self.myArray = [NSMutableArray array];
    }
    return self;
}

- (IBAction)addItemToOrder:(id)aSender
{
    [self.myArray addObject:@"MyOrder"];
    NSLog(@"%@",testArray.description); 
}

@end
于 2013-09-16T15:26:07.327 に答える