zoukankan      html  css  js  c++  java
  • 新闻 详情页 代码

    #pragma mark 自定义视图

    - (void)loadView

    {

        self.animationDetailView = [[[AnimationDetailView alloc] initWithFrame:[UIScreen mainScreen].bounds] autorelease];

        self.view = _animationDetailView;

    }

    - (void)viewDidLoad {

        [super viewDidLoad];

        // Do any additional setup after loading the view.

        self.animationDetailView.webView.delegate = self;

        

        // 请求网络数据

        [self loadDataAndShow];

    }

    #pragma mark 加载网络数据

    - (void)loadDataAndShow

    {

        [SVProgressHUD show];

        

        NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://news-at.zhihu.com/api/4/story/%@", _funModel.ID]];

        

        NSURLRequest *request = [NSURLRequest requestWithURL:url];

        

        __block MovieDetailViewController *weakSelf = self;

        [NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue new] autorelease] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {

            // 没有数据直接返回

            if (data == nil) {

                [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(loadError:) userInfo:nil repeats:NO];

                return ;

            }

            NSDictionary *allDataDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];

            NSString *bodyStr = allDataDict[@"share_url"];

            NSURLRequest *webRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:bodyStr]];

            //回主线程刷新UI

            dispatch_async(dispatch_get_main_queue(), ^{

                [weakSelf.animationDetailView.webView loadRequest:webRequest];

                

                [SVProgressHUD dismiss];

            });

        }];

    }

    #pragma mark 网络加载失败

    - (void)loadError:(NSTimer *)sender

    {

        [SVProgressHUD showErrorWithStatus:@"加载失败"];

        [sender invalidate];

    }

  • 相关阅读:
    TIDB-存储
    MySQL的ACID
    MySQL MVCC
    MySQL 悲观锁、乐观锁、MVCC一
    MySQL写放大总结
    基于Linux上的wifi密码爆破
    Stack与Queue的实现(c++模板实现)
    vector 实现二维数组
    Linux下的静态链接与动态链接
    260. Single Number III
  • 原文地址:https://www.cnblogs.com/iOS-mt/p/4250204.html
Copyright © 2011-2022 走看看