亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

iOS購物分類模塊的實現方案

2020-07-26 03:27:35
字體:
來源:轉載
供稿:網友

本文實例分享了iOS購物分類模塊的實現方案,供大家參考,具體內容如下

啟動
在AppDelegate中創建主視圖控制器。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  // Override point for customization after application launch.  self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];  // Override point for customization after application launch.  self.window.backgroundColor = [UIColor whiteColor];  [self.window makeKeyAndVisible];        Basetabarcontroller*base=[[Basetabarcontroller alloc]init];        self.window.rootViewController=base;        return YES;    }

UI框架設計

Basetabbarcontroller基于UITabBarController,作為主視圖控制器。
頭文件如下:

@interface Basetabarcontroller : UITabBarController    @end

實現文件中主要做了2點:創建視圖控制器ClassViewController,并將它設置到新創建的創建導航控制器中。

- (void)viewDidLoad {  [super viewDidLoad];  self.tabBar.tintColor = [UIColor redColor];  // self.tabBar.barTintColor = [UIColor blackColor];         ClassViewController*classList=[[ClassViewController alloc]init];  //classList.title=@"分類";            [self addChildViewController:classList title:@"分類" image:@""];       UIButton *menuBtn = [UIButton buttonWithType:UIButtonTypeCustom];  menuBtn.frame = CGRectMake(0, 0, 20, 18);  [menuBtn setBackgroundImage:[UIImage imageNamed:@"1.png"] forState:UIControlStateNormal];  [menuBtn addTarget:self action:@selector(openOrCloseLeftList) forControlEvents:UIControlEventTouchUpInside];  self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:menuBtn];  //self.tabBar.barTintColor = [UIColor redColor];}- (void)addChildViewController:(UIViewController *)childController title:(NSString *)title image:(NSString *)image{        UINavigationController *childVC = [[UINavigationController alloc]initWithRootViewController:childController];  childVC.tabBarItem.title = title;   childVC.tabBarItem.image = [UIImage imageNamed:image];  childVC.navigationBar.barTintColor = [UIColor whiteColor];         [self addChildViewController:childVC];          }

主要的界面視圖控制器定義:

@interface ClassViewController : UIViewController   @end

實現文件中:

- (void)viewDidLoad {  [super viewDidLoad];  // Do any additional setup after loading the view.          UIBarButtonItem *searchBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSearch target:self action:@selector(searchBarButtonItemAction)];  self.navigationItem.rightBarButtonItem = searchBarButtonItem;    [self setdata];  [self setimage];  [self setdeatil];          _a=1;  _b=1;  _segement=[[UISegmentedControl alloc]initWithItems:@[@"攻略",@"詳情"]];  _segement.frame=CGRectMake(90, 20, kwidth-180, 30);  _segement.tintColor=[UIColor blackColor];  _segement.selectedSegmentIndex=0;  [_segement addTarget:self action:@selector(changevalue:) forControlEvents:(UIControlEventValueChanged)];  self.navigationItem.titleView =_segement;   self.scrollview=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, kwidth, KHeight)];  _scrollview.directionalLockEnabled=YES;  _scrollview.contentSize=CGSizeMake(kwidth*2, KHeight);  _scrollview.delegate=self;            [self.view addSubview:self.scrollview];  UICollectionViewFlowLayout*flow=[[UICollectionViewFlowLayout alloc]init];    //列距  flow.minimumInteritemSpacing=20;       //行距  flow.minimumLineSpacing=40;    //分區內邊距  flow.sectionInset=UIEdgeInsetsMake(0, 20, 20, 20);    CGFloat totalwidth=self.view.frame.size.width;       CGFloat itemwidth=(totalwidth-2*20-3*20)/4.0;       CGFloat itemheight=itemwidth;       flow.itemSize=CGSizeMake(itemwidth, itemheight);       flow.headerReferenceSize=CGSizeMake(0, 40);       //滾動方向  flow.scrollDirection= UICollectionViewScrollDirectionVertical;  ;       //區頭大小  flow.headerReferenceSize=CGSizeMake(0, 100);       _collection=[[UICollectionView alloc]initWithFrame:[UIScreen mainScreen].bounds collectionViewLayout:flow];  _collection.backgroundColor=[UIColor whiteColor];  _collection.tag=1;  _Srr=@[@"1",@"s",@"2",@"r"];  for (NSString*St in _Srr) {    [_collection registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:St];}  //設置 數據源 和代理  _collection.dataSource=self;  _collection.delegate=self;  [_collection registerClass:[ClassCollectionViewCell class] forCellWithReuseIdentifier:@"mycell"];  // _collection.backgroundColor=[UIColor yellowColor];  _collection.directionalLockEnabled=YES;       [self.scrollview addSubview:_collection];  UIView*view=[[UIView alloc]initWithFrame:CGRectMake(kwidth, 0, kwidth, 30)];  // view.backgroundColor = [UIColor whiteColor];  UIButton*label=[UIButton buttonWithType:(UIButtonTypeSystem)];  label.frame=CGRectMake(0, 20, 200, 14) ;  [label setTitle:@"選禮神器" forState:(UIControlStateNormal)];  [label addTarget:self action:@selector(xuan) forControlEvents:(UIControlEventTouchUpInside)];  [view addSubview:label];  [self.scrollview addSubview:view];

 網絡數據封裝
基于NFNetworking,封裝了3個接口

@interface LORequestManger : NSObject   + (void)POST:(NSString *)URL params:(NSDictionary * )params success:(void (^)(id response))success   failure:(void (^)(AFHTTPRequestOperation *operation,NSError *error))Error;      + (void)GET:(NSString *)URL  success:(void (^)(id response))success  failure:(void (^)(AFHTTPRequestOperation *operation,NSError *error))Error;   + (void)UPLOADIMAGE:(NSString *)URL       params:(NSDictionary *)params    uploadImage:(UIImage *)image      success:(void (^)(id response))success      failure:(void (^)(AFHTTPRequestOperation *operation,NSError *error))Error;   @end

實現文件:

#import "LORequestManger.h"#define serverUrl @"http://192.168.1.1:8080/jiekou"   @implementation LORequestManger         + (void)POST:(NSString *)URL params:(NSDictionary * )params success:(void (^)(id response))success   failure:(void (^)(AFHTTPRequestOperation *operation,NSError *error))Error{  // 創建請求管理者  AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];       // 請求超時時間     manager.requestSerializer.timeoutInterval = 30;  NSString *postStr = URL;  if (![URL hasPrefix:@"http"]) {           postStr = [NSString stringWithFormat:@"%@%@", serverUrl,URL] ;  }  NSMutableDictionary *dict = [params mutableCopy];            // 發送post請求  [manager POST:postStr parameters:dict success:^(AFHTTPRequestOperation *operation, id responseObject) {           // 請求成功    NSDictionary *responseDict = (NSDictionary *)responseObject;    success(responseDict);         } failure:^(AFHTTPRequestOperation *operation, NSError *error) {// 請求失敗    Error( operation,error);         }];      }   + (void)GET:(NSString *)URL  success:(void (^)(id response))success  failure:(void (^)(AFHTTPRequestOperation *operation,NSError *error))Error{  // 獲得請求管理者  AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] init];  manager.requestSerializer = [AFJSONRequestSerializer serializer];  [manager.requestSerializer setHTTPShouldHandleCookies:NO];  manager.requestSerializer.timeoutInterval = 30;  NSString *getStr = URL;//  NSLog(@"getStr======%@",getStr);  if (![URL hasPrefix:@"http"]) {           getStr = [NSString stringWithFormat:@"%@%@", serverUrl,URL] ;  }          // 發送GET請求  [manager GET:getStr parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {//    NSLog(@"getStr------------%@",getStr);    NSDictionary *responseDict = (NSDictionary *)responseObject;            success(responseDict);            } failure:^(AFHTTPRequestOperation *operation, NSError *error) {    if (!operation.responseObject) {      NSLog(@"網絡錯誤");    }    Error( operation,error);  }];        }   + (void)UPLOADIMAGE:(NSString *)URL       params:(NSDictionary *)params    uploadImage:(UIImage *)image      success:(void (^)(id response))success      failure:(void (^)(AFHTTPRequestOperation *operation,NSError *error))Error{  // 創建請求管理者  AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];       manager.requestSerializer = [AFJSONRequestSerializer serializer];  manager.responseSerializer = [AFJSONResponseSerializer serializer];  manager.requestSerializer.timeoutInterval = 30;  //  [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];  //  //  [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];       NSString *postStr = [NSString stringWithFormat:@"%@%@", serverUrl,URL] ;  NSMutableDictionary *dict = [params mutableCopy];     [manager POST:postStr parameters:dict constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {    NSData *imageData = UIImageJPEGRepresentation(image, 0.1);    [formData appendPartWithFileData:imageData name:@"img" fileName:@"head.jpg" mimeType:@"image/jpeg"];         } success:^(AFHTTPRequestOperation *operation, id responseObject) {       NSDictionary *responseDict = (NSDictionary *)responseObject;        success(responseDict);      } failure:^(AFHTTPRequestOperation *operation, NSError *error) {    Error( operation,error);         }];         }

效果:

以上就是本文的全部內容,希望對大家的學習有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
xxav国产精品美女主播| 久久精品最新地址| 久久成人在线视频| 久久久精品一区二区三区| 亚洲精品午夜精品| 91av在线精品| 日本在线观看天堂男亚洲| 精品偷拍各种wc美女嘘嘘| 大桥未久av一区二区三区| 美女视频久久黄| 日韩av免费看| 夜夜嗨av色一区二区不卡| 久久不射热爱视频精品| 91av中文字幕| 国产精品美女av| 欧美日韩国产一区二区三区| 国内精品一区二区三区四区| 欧美成人自拍视频| 色噜噜亚洲精品中文字幕| 51ⅴ精品国产91久久久久久| 欧美激情一区二区三级高清视频| 国产欧美日韩亚洲精品| 亚洲成人a级网| 欧美人在线观看| 久久亚洲国产成人| 国模精品系列视频| 亚洲精品91美女久久久久久久| 国产在线视频欧美| 精品国产成人av| 亚洲成人久久网| 欧美另类极品videosbestfree| xxx欧美精品| 欧美夫妻性生活xx| 欧美第一页在线| 亚洲精品91美女久久久久久久| 欧美乱大交xxxxx| 91精品国产综合久久香蕉的用户体验| 亚洲第一中文字幕在线观看| 欧美疯狂xxxx大交乱88av| 成人免费在线视频网站| 欧美中文字幕在线播放| 久久成年人免费电影| 亚洲一区二区三区sesese| 亚洲一区二区三区四区在线播放| 国产精品夜间视频香蕉| 久久这里有精品| 国产精品免费一区二区三区都可以| 欧美日韩国产成人在线| 亚洲色图第一页| 欧美黑人xxxx| 国产亚洲欧洲黄色| 国产视频福利一区| 在线观看日韩欧美| 91在线免费视频| 亚洲久久久久久久久久| 成人在线小视频| 欧美巨猛xxxx猛交黑人97人| 亚洲第一区中文99精品| 欧美最猛性xxxxx(亚洲精品)| 日韩欧美aaa| 欧美国产精品va在线观看| 日韩一区在线视频| 久久这里有精品视频| 国产精品一区二区av影院萌芽| 91地址最新发布| 亚洲欧美日韩国产中文| 在线观看成人黄色| 亚洲丁香婷深爱综合| 国产精品成人一区二区三区吃奶| 992tv成人免费影院| 中文字幕一区电影| 亚洲精品国产精品久久清纯直播| 性亚洲最疯狂xxxx高清| 日韩在线观看高清| 精品久久久久久中文字幕大豆网| 欧美裸体xxxx| 一区二区三区天堂av| 日本在线精品视频| 久久久久久久一| 国产成人精品免费视频| 日韩精品中文字幕在线观看| 国产精品va在线播放我和闺蜜| 国产69精品久久久久9999| 日韩电影中文字幕在线| 91av在线免费观看| 中文字幕久精品免费视频| 日韩中文字幕精品视频| 91精品国产91久久久久久久久| 国产97色在线|日韩| 国产精品久久久久久久久久久久久| 亚洲国产精品va在线看黑人动漫| 91在线|亚洲| 欧美日韩在线影院| 亚洲男女性事视频| 精品久久久久久久大神国产| 欧美大学生性色视频| 久久av在线播放| 国内伊人久久久久久网站视频| 韩国国内大量揄拍精品视频| 2019中文字幕免费视频| 日韩国产精品视频| 中文字幕亚洲激情| 国产精品视频最多的网站| 国产精品综合网站| 国产激情综合五月久久| 国产日韩欧美另类| 青青久久aⅴ北条麻妃| 国产精品69久久| 91久久久久久| 欧美激情精品久久久久| 国产一区二区三区高清在线观看| 日韩av在线免费| 亚洲女性裸体视频| 亚洲精品国产综合区久久久久久久| 久久精品国产久精国产一老狼| 欧美大肥婆大肥bbbbb| 伊人伊人伊人久久| 亚洲精品国产精品乱码不99按摩| 日韩免费av片在线观看| 亚洲bt欧美bt日本bt| 日本成人免费在线| 日韩av网站导航| 亚洲色在线视频| 亚洲人成网站免费播放| 91精品视频网站| 91丝袜美腿美女视频网站| 日韩av电影在线免费播放| 91探花福利精品国产自产在线| 狠狠综合久久av一区二区小说| 久久久噜久噜久久综合| 亚洲国内高清视频| 欧美性猛交丰臀xxxxx网站| 57pao成人国产永久免费| 蜜臀久久99精品久久久久久宅男| 一本色道久久88亚洲综合88| 国内精品久久久久久久久| 久久久999精品| 国产精品久久久久久久久久99| 高清欧美性猛交xxxx黑人猛交| 日韩激情在线视频| 中文字幕av一区二区三区谷原希美| 欧美日韩国产中文精品字幕自在自线| 97视频在线观看网址| 国产精品视频成人| 日韩精品亚洲精品| 欧美三级欧美成人高清www| 美女久久久久久久久久久| 国产精品久久久久久久久久新婚| 久久大大胆人体| 国产精品久久久久77777| 亚洲国产精品va在线看黑人| 亚洲天堂第二页| 国内精品久久久久久久| 国产91色在线播放| 国产精品稀缺呦系列在线| 韩剧1988免费观看全集| 欧美在线观看网站| 久久久亚洲影院你懂的| 欧美日在线观看| 精品久久久91| 国产成人avxxxxx在线看| 亚洲女人天堂网| 久久精品福利视频| 国产精品久久久久久久久久新婚|