카테고리 없음

[ios] 객체를 전달하기 전에 뷰 컨트롤러가 존재해야 함

행복을전해요 2021. 3. 1. 03:26

initWithCoder 사용 : 컨트롤러가 IB로 만들어 졌기 때문입니다. 이 코드를 vc2 .m 파일에 넣으십시오.

-(id)initWithCoder:(NSCoder *) aDecoder {
   if (self = [super initWithCoder: aDecoder]) {
           _array2 =[[NSMutableArray alloc]init];
              }
                 return self;
                 }
                 
-------------------

탭보기 컨트롤러에서보기는 해당보기가 표시 될 때만로드됩니다. 따라서 앱이 처음으로 점심을 먹으면 첫 번째보기 만로드됩니다. 두 번째보기가로드되지 않습니다. 따라서 두 번째 뷰 컨트롤러의 -viewDidLoad가 호출되지 않습니다. 따라서 현재 어레이가 시작되지 않습니다.

따라서 init 메소드에서 배열을 할당해야합니다.

 -(id)init
{
   self = [super init];
      if(self) 
         {
                 _array2 =[[NSMutableArray alloc]init];
                    }
                       return self;
                       }
                       

다른 init 메서드에서이 줄을 쓰지 않으면 작동 할 것이라고 생각합니다.



출처
https://stackoverflow.com/questions/22089799