1. 程式人生 > >網路程式碼實現

網路程式碼實現

一 , 匯入AFNetworking檔案 二 , 建立model類 ,繼承於object 三 , 開啟網路請求 model.h #import <Foundation/Foundation.h>

@interface MyModel : NSObject @property (nonatomic , strong)NSString *author , *createtime , *sid , *likenum , *pic , *title; @end

model.m:

#import “MyModel.h”

@implementation MyModel -(void)setValue:(id)value forUndefinedKey:(NSString *)key{

} @end

ViewController.m #import “ViewController.h” #import “MyModel.h” #import “AFNetworking.h” #import “Two.h” #define get_666 “http://d.yixincao.com/interface/getdata.php?act=list&type=nuanwen&page=0” @interface ViewController ()<UITableViewDelegate , UITableViewDataSource> { UITableView *tbv; NSMutableArray *dataSoure; } @end

@implementation ViewController

  • (void)viewDidLoad { [super viewDidLoad]; tbv = [[UITableView alloc] initWithFrame:self.view.frame style:UITableViewStylePlain]; tbv.delegate = self; tbv.dataSource = self; [self.view addSubview:tbv]; dataSoure = [NSMutableArray new]; AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@“text/html”]; [manager GET:@get_666 parameters:nil headers:nil progress:^(NSProgress * _Nonnull downloadProgress) {

    } success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) { //成功返回 NSLog(@"///成功////%@",responseObject);

      for (NSDictionary *dic in responseObject[@"data"]) {
          MyModel *model  = [MyModel new];
          model.author = [dic objectForKey:@"author"];
          model.pic = [dic objectForKey:@"pic"];
          model.title = [dic objectForKey:@"title"];
          model.sid = [dic objectForKey:@"id"] ;
          [self->dataSoure addObject:model];
      }
      dispatch_async(dispatch_get_main_queue(), ^{
    
          [self->tbv reloadData];
      });
    

    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) { //失敗返回 NSLog(@"////失敗////%@",error); }]; } -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ return dataSoure.count; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:nil];

      MyModel *model = dataSoure[indexPath.row];
      cell.imageView.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:[dataSoure[indexPath.row]pic]]]];
      cell.textLabel.text = model.title;
      cell.textLabel.lineBreakMode = UILineBreakModeCharacterWrap;
      cell.textLabel.numberOfLines = 0;
      UILabel *zuozhe = [[UILabel alloc] initWithFrame:CGRectMake(300, 50, 100, 40 )];
      zuozhe.text = model.author;
      [cell addSubview:zuozhe];
    

    return cell; } -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ return 100; } -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

    Two *two =[[Two alloc] init]; // NSLog(@"%@",[dataSoure[indexPath.row]sid]); two.twoID = [dataSoure[indexPath.row]sid]; [self.navigationController pushViewController:two animated:YES]; }