2012-11-22 2 views
0

것은 내가 다음 XIB와 코드를 다음 있습니다 : 내가보기를 NSLog 할 때 연결된 IBOutlet 구성 요소가 null입니까?

enter image description here

나는 cellLoadMore를 NSLog하려고

@property (nonatomic, retain) IBOutlet UITableViewCell *cellLoadMore; 
, 그것은, 그러나, null를 돌려, 그것은 가치가있다. 무슨 cellLoadMore의 문제가 될 수 null을 반환합니까?

- (void)viewDidLoad{ 
    [super viewDidLoad]; 

    NSLog(@"cell load more %@", cellLoadMore_); 
    NSLog(@"view %@", self.view); 
} 

콘솔 인쇄 :

cell load more (null) 
view <UITableView: 0x1284200; frame = (0 20; 320 460); clipsToBounds = YES; autoresize = W+H; layer = <CALayer: 0xa393b0>; contentOffset: {0, 0}> 

참고 :

다음은 내 코드 내 클래스는 jQuery과에서 서브 클래스입니다.

+1

어디에서 로그인 하시겠습니까? – borrrden

+0

borrrden이 암시한다고 생각하기 때문에 뷰 컨트롤러의 '뷰'는 필요에 따라로드되지만 일반적으로 뷰가로드 될 때만 다른 콘센트가 연결됩니다. 따라서 뷰가로드되기 전에 로그를 남기면 설명하는 동작이 정확할 수 있습니다. – Tommy

+0

내가 viewDidLoad NSlog 그것과 사용자 정의 셀이 또한 거기에로드되어 있어야합니다 생각해? UIViewController에서 서브 클래 싱 된 다른 클래스가 사용자 정의 셀을 가지고 있고 NSDSLog가 0 일 때 반환하지 않습니다. – Rendy

답변

0

나는이 문제에 몇 차례 직면하여 UITableViewController의 하위 클래스에서 내 컨트롤러를 UITableview 대리인을 사용하는 UIViewController로 변경하여 문제를 해결할 수있었습니다. 이것은 꽤 성가시다.

0

셀이로드되기 전에 "로깅"중일 수 있습니다. 셀은 처음으로 (google for lazy loading)을 사용했을 때로드됩니다. 셀보기에 액세스하면 이 실제로이고 실제로로드됩니다. 그 후에보기와 셀을 기록 할 수 있으며 더 이상 null이 아니어야합니다.

+0

위의 내용을 참조하십시오 :) – Rendy

+0

시도 했습니까? NSLog (@ "셀로드 % @", self.cellLoadMore); –

1

나는 이것이 무슨 일이 일어나고 있는지 생각합니다. 속성 및 인스턴스 변수를 만들고 있지만 속성을 올바르게 합성하지 않습니다. 기본적으로 Xcode 4.4 이상에서는 cellLoadMore_이 아니라 _cellLoadMore으로 속성이 합성됩니다. 이전 버전에서 단순히 @synthesize cellLoadMore을 사용하면 변수는 cellLoadMore이됩니다. 따라서 기본적으로 @synthesize cellLoadMore = cellLoadMore_이라는 줄이 없다면 두 가지 변수가 있습니다.

+0

감사합니다. borrrden, 나는 나중에 집에서 그것을 다시 시도 할 것이다. – Rendy

관련 문제