有數(shù)據(jù),data 是有的。
- (void)downloader:(Downloader *)downloader didFinishWithData:(NSData *)data {
調用了
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@"4 ");
return self.dataArray.count;
}
但是 ,沒調用
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"5 ");
return 80;
}
和
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
?
原因分析:
?
有數(shù)據(jù),
但是 , 這一步 有問題。
- (void)downloader:(Downloader *)downloader didFinishWithData:(NSData *)data {
//XML解析
MyXMLParser * parser = [[MyXMLParser alloc ] init ];
self.dataArray = [parser parseWithData: data ];
數(shù)據(jù) 沒 解析 對。
self.dataArray ,沒 值。
就這樣了。
√
結果
√
@implementation MyXMLParser 里面的
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
if ( [ elementName isEqualToString: @"newslist" ] ){
// 我是這么寫的,
// if ( [ elementName isEqualToString: @"newsList" ] ){
self.dataArray = self.newsListArray;
self.newsListArray = nil;
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary<NSString *,NSString *> *)attributeDict {
if ( [elementName isEqualToString: @"newslist" ]){
// 我是這么寫的,
// if ( [elementName isEqualToString: @"newsList" ]){
self.newsListArray = [NSMutableArray array ];