zoukankan      html  css  js  c++  java
  • ios开发之--MJRefresh的简单使用

    MJRefresh是MJ大神写的框架,很强大,好多外国开发者都在用!

    具体方法如下:

    -(void)requestData
    {
        NSString *userIdStr = [NSString stringWithFormat:@"%@",[DEFAULTS objectForKey:USERID]];
        
        self.pageNums ++;
        
        HStart(self.view);
        [hHttpEngine getRongNoticeAction:userIdStr page:[NSString stringWithFormat:@"%ld",(long)self.pageNums] success:^(id response) {
            
            HStop(self.view);
            NSDictionary *dict = (NSDictionary *)response;
            
            NSString *codeStr = [NSString stringWithFormat:@"%@",dict[@"code"]];
            
            if ([codeStr isEqualToString:@"0"]) {
                
                if (self.pageNums == 1) {
                    [self.contentAry removeAllObjects];
                }
                
                self.dataAry = [NSMutableArray arrayWithArray:dict[@"data"]];
                
                if (self.dataAry.count > 0) {
                    
                    self.dataStatusView.hidden = YES;
                    newNotiTableV.hidden = NO;
                    
                    for (NSDictionary *dict in self.dataAry) {
                        NewNotiModel *model = [NewNotiModel mj_objectWithKeyValues:dict];
                        [self.contentAry addObject:model];
                    }
                }else
                {
                    if (self.contentAry.count == 0) {
                        self.dataStatusView.hidden = NO;
                        self.dataStatusView.dataStatus = DataStatus_noData;
                        newNotiTableV.hidden = YES;
                    }else
                    {
                        self.dataStatusView.hidden = YES;
                        newNotiTableV.hidden = NO;
                    }
                    self.pageNums --;
                }
                
            }else
            {
                HStop(self.view);
                show_msg(@"网络错误");
            }
            
            [newNotiTableV reloadData];
            [newNotiTableV.mj_footer endRefreshing];
            [newNotiTableV.mj_header endRefreshing];
            
        } failure:^(NSError *err) {
            HStop(self.view);
            [newNotiTableV.mj_footer endRefreshing];
            [newNotiTableV.mj_header endRefreshing];
        }];
    }

    方法调用,在tableview初始化的时候调用:

    newNotiTableV.mj_header = [MJRefreshHeader headerWithRefreshingBlock:^{
            [self requestData];
        }];
        
        newNotiTableV.mj_footer = [MJRefreshAutoFooter footerWithRefreshingBlock:^{
            self.pageNums = 0;
            [self requestData];
        }];

    数据转模型的方法:

    1,建一个model,然后在.m方法里面实现:

    -(void)setValue:(id)value forUndefinedKey:(NSString *)key
    {
        if ([key isEqualToString:@"id"]) {
            value = self.ida;
        }
    }

    可以什么都不写

    2,MJExtension类库,具体使用方法如下:

    for (NSDictionary *dict in dataAry) {
        MainListModel *model = [MainListModel mj_objectWithKeyValues:dict];
        [self.datasAry addObject:model];
    }

    这里仅做记录!

  • 相关阅读:
    HTML超链接a标签
    ANR与Crash
    学习笔记:oracle学习一:oracle11g体系结构之物理存储结构
    学习笔记:oracle学习一:oracle11g体系结构之服务器结构、数据字典
    关于sql server全文检索的一些资料收集2
    关于sql server全文检索的一些资料收集1
    关于sql server全文检索的一些资料收集2
    做日文编码网页解决乱码的经验。(仇日派别砍我~~)
    如何监视sql server连接池
    做全文检索的小心得
  • 原文地址:https://www.cnblogs.com/hero11223/p/9068795.html
Copyright © 2011-2022 走看看