• 高仿糗事百科


    相关代码展示:

    #pragma mark - PSCollectionViewDelegate and DataSource methods

    - (NSInteger)numberOfRowsInCollectionView:(PSCollectionView *)collectionView

    {

        return [_picArray count];

    }

    - (PSCollectionViewCell *)collectionView:(PSCollectionView *)collectionView cellForRowAtIndex:(NSInteger)index

    {

        NSDictionary *item = [_picArray objectAtIndex:index];

        

        NeiHanPicCell *cell = (NeiHanPicCell *)[_collectionView dequeueReusableViewForClass:[NeiHanPicCell class]];

        if (!cell) {

            cell = [[NeiHanPicCell alloc] initWithFrame:CGRectZero];

        }

        [cell collectionView:_collectionView fillCellWithObject:item atIndex:index];

        

        return cell;

    }

    - (CGFloat)collectionView:(PSCollectionView *)collectionView heightForRowAtIndex:(NSInteger)index

    {

        NSDictionary *item = [_picArray objectAtIndex:index];

        

        return [NeiHanPicCell rowHeightForObject:item inColumnWidth:_collectionView.colWidth];

    }

    - (void)collectionView:(PSCollectionView *)collectionView didSelectCell:(PSCollectionViewCell *)cell atIndex:(NSInteger)index

    {

        NSDictionary *dict = [_picArray objectAtIndex:index];

        QiuShiImageViewController *qiushiImageVC = [[QiuShiImageViewController alloc] initWithNibName:@"QiuShiImageViewController" bundle:nil];

        [qiushiImageVC setQiuShiImageURL:[dict objectForKey:@"image0"]];

        qiushiImageVC.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

        [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];

        [self presentViewController:qiushiImageVC animated:YES completion:nil];

        [qiushiImageVC release];

    }

    #pragma mark - UIScrollView delegate method

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView

    {

        [_refreshHeaderView egoRefreshScrollViewDidScroll:scrollView];

        [_loadMoreFooterView loadMoreScrollViewDidScroll:scrollView];

    }

    - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate

    {

        [_refreshHeaderView egoRefreshScrollViewDidEndDragging:scrollView];

        [_loadMoreFooterView loadMoreshScrollViewDidEndDragging:scrollView];

    }

    #pragma mark - EGORefreshTableHeaderDelegate methods

    - (void)egoRefreshTableHeaderDidTriggerRefresh:(EGORefreshTableHeaderView *)view

    {

        _reloading = YES;

        _requestType = RequestTypeNormal;

        

        _currentPage = 0;

        [self loadNeiHanPicDataSource];

    }

    - (BOOL)egoRefreshTableHeaderDataSourceIsLoading:(EGORefreshTableHeaderView *)view

    {

        return _reloading;

    }

    - (NSDate *)egoRefreshTableHeaderDataSourceLastUpdated:(EGORefreshTableHeaderView *)view

    {

        return [NSDate date];

    }

    #pragma mark - LoadMoreFooterView delegate method

    - (void)loadMoreTableFooterDidTriggerRefresh:(LoadMoreFooterView *)view

    {

        _reloading = YES;

        _requestType = RequestTypeLoadMore;

        

        _currentPage++;

        [self loadNeiHanPicDataSource];

    }

    #pragma mark - ASIHTTPRequest delegate methods

    - (void)requestFinished:(ASIHTTPRequest *)request

    {

        JSONDecoder *jsonDecoder = [[JSONDecoder alloc] init];

        NSDictionary *dic = [jsonDecoder objectWithData:[request responseData]];

        

       // NSLog([request responseData]);

        

        [jsonDecoder release];

        

        if (_reloading) {

            _reloading = NO;

            [_refreshHeaderView egoRefreshScrollViewDataSourceDidFinishedLoading:_collectionView];

            [_loadMoreFooterView loadMoreshScrollViewDataSourceDidFinishedLoading:_collectionView];

        }

        

        if (_requestType == RequestTypeNormal) {

            [_picArray removeAllObjects];

        }

        

        [_picArray addObjectsFromArray:[dic objectForKey:@"list"]];

        

        [self dataSourceDidLoad];

    }

    - (void)requestFailed:(ASIHTTPRequest *)request

    {

        [self dataSourceDidError];

        if (_reloading) {

            _reloading = NO;

            [_refreshHeaderView egoRefreshScrollViewDataSourceDidFinishedLoading:_collectionView];

            [_loadMoreFooterView loadMoreshScrollViewDataSourceDidFinishedLoading:_collectionView];

        }

    }

    #pragma mark - ASIHTTPRequest method

    - (void)initNeiHanPicRequestWithPage:(NSInteger)page

    {

        self.picRequest = [ASIHTTPRequest requestWithURL:[NSURL URLWithString:api_neihan_picture(page)]];

        _picRequest.delegate = self;

        [_picRequest startAsynchronous];

    }

    #pragma mark - UIAction method

    - (IBAction)sideButtonClicked:(id)sender

    {

        [self sideButtonDidClicked];

    }

  • 相关阅读:
    把EXE可执行文件等作为资源包含在Delphi编译文件中
    delphi怎么做桌面滚动文字?
    cxGrid控件过滤筛选后如何获更新筛选后的数据集
    我的ecshop二次开发经验分享
    ECSHOP 数据库结构说明 (适用版本v2.7.3)
    cxGrid 怎样才能让不自动换行 WordWrap:=false
    vi notes
    ODI中显示us7ascii字符集的测试
    ODI 11g & 12c中缓慢变化维(SCD)的处理机制
    ODI中的临时接口
  • 原文地址:https://www.cnblogs.com/yulang314/p/3833182.html
Copyright © 2020-2023  润新知