Debug: 表视图

有数据,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 {


原因分析:

有数据,
但是 , 这一步 有问题。

- (void)downloader:(Downloader *)downloader didFinishWithData:(NSData *)data {
    
    //XML解析
    MyXMLParser * parser = [[MyXMLParser alloc ] init ];
    self.dataArray = [parser parseWithData: data ];

数据 没 解析 对。
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 *)attributeDict {

    if ( [elementName isEqualToString: @"newslist" ]){
// 我是这么写的, 
// if ( [elementName isEqualToString: @"newsList" ]){

        self.newsListArray = [NSMutableArray array ];

你可能感兴趣的:(Debug: 表视图)