0
在viewDidLoad中我稱之爲NSArray在TableView調用之前沒有完成?
if (self.selectedObjectID) {
CoreDataHelper *cdh = [(AppDelegate *)[[UIApplication sharedApplication] delegate] cdh];
Location *locate = (Location*)[cdh.context existingObjectWithID:self.selectedObjectID error:nil];
self.addressValue = [
[NSArray alloc] initWithObjects:locate.intersectionMain,
locate.intersectionSide,
locate.city,
locate.zipCode,
locate.county,
locate.stateProvince,
locate.country,
locate.intersectionID,
nil
];
}
通過表視圖調用時間:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
我得到一個問題與指數超越界限在我addressValue變量。它聲稱陣列中只有1個項目。有趣的是,這個確切的代碼在iPad上效果很好,但是它的索引超出了iPhone的界限。無論從位置的什麼價值首先加載到陣列,我只有一個。我不明白。這是一個耗盡時間的問題。我怎樣才能解決這個問題?
你在'numberOfRowsInSection?'中返回的值是什麼?請注意,如果你傳遞給'initWithObjects'的任何變量都是零,那麼它將作爲終止符,並且你的數組中的元素將會減少。例如,如果locate.city爲零,那麼你將只有兩個元素在你的數組中,交叉點和交叉點主 – Paulw11
嘗試查看你的'[[NSArray alloc] ..]中的每個對象值;'可能返回零的東西,因此數組將停止添加剩餘的對象。發生在我身上很多 – ErickES7
我會檢查零。任何想法爲什麼這個問題會顯示在iPhone上,而不是iPad上。我的源數據是一樣的。 – jmr1706