当前位置: 首页 > news >正文

旅游主题网站策划书公司官网制作多少钱

旅游主题网站策划书,公司官网制作多少钱,山东省建设厅官方网站怎么样,青浦区做网站效果图 主要的逻辑 Manager封装网络请求 首先,对于获取网络请求,我是将这些方法封装成了一个类Manager,后续在获取以往的内容时又封装了一个beforeManager类用于网络请求。这里不多赘述,Manager封装网络请求的知识参考我的以往博…

效果图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

主要的逻辑

Manager封装网络请求

  • 首先,对于获取网络请求,我是将这些方法封装成了一个类Manager,后续在获取以往的内容时又封装了一个beforeManager类用于网络请求。这里不多赘述,Manager封装网络请求的知识参考我的以往博客:iOS——Manager封装网络请求
  • 获取到网络请求之后,使用Model层的类和JSONModel来获取接收到的内容,JSONModel的知识可以参考我以往的博客:iOS——JSONModel的使用与JSONModel的嵌套,在Model层我使用了两个类,一个mainModel用于接收一开始启动程序接收的内容,一个beforeModel用于接收以往的内容。

线程的管理

在写知乎日报的时候,遇见了线程的问题,比如说在viewController中获取Manager网络请求的内容时,因为在viewControllert中viewDidLoad执行的很早,所以如果将View层的初始化放在viewDidLoad的话,就会先去布局好UI,等网络请求好时无法将请求到的数据赋给UI控件。所以这时候需要将View层的初始化重新放在一个实例方法loadUI中,在完成网络请求之后再去调用该loadUI方法。这时候就会发现,如果我们只是将其不加修饰写在网络请求完回调的方法时,就会报错,因为View的初始化不在主线程进行。这时我们就需要使用:

dispatch_async(dispatch_get_main_queue(), ^{[self loadUI];});

使其在主线程中进行,才能解决问题。
同样的,在后面刷新tableView时的reloadData也要使用这个方法,是因为在iOS中,reloadData方法必须在主线程上调用。

加载网络图片

在进行网络请求时,我发现请求到的图片内容都是url,此时我们没办法直接将其转化为图片形式,所以就要使用一个第三方库:SDWebImage库,这个库可以将我们请求到的url转为图片,其用法如下:
首先,我们要导入该库:和Masonry、JSONModel这些的方法一样:pod ‘SDWebImage’ 即可
然后获取我们通过网络请求到的图片的url,并且导入SDWebImage的头文件。然后使用 SDWebImage 中的 sd_setImageWithURL: 方法将网络图片加载到 UIImageView 中。
示例:

[yourImageView sd_setImageWithURL:[NSURL URLWithString:@"图片的url"]placeholderImage:[UIImage imageNamed:@"placeholder"]];

这将下载位于指定 URL 的图片并将其设置为 yourImageView,如果图片下载失败,将会使用 placeholder 图片作为占位符。

左上角时间的获取

这里我使用了NSDate来获取当前时间,并将时间转化为字符串,然后赋值给View层。

#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN@interface timeModel : NSObject
- (NSArray*)titleTimeLabel;
@endNS_ASSUME_NONNULL_END
#import "timeModel.h"@implementation timeModel- (NSArray *)titleTimeLabel {NSDate *timeDate = [NSDate date];NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier: NSCalendarIdentifierGregorian];unsigned unitFlags = NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitDay | NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond | NSCalendarUnitWeekday;NSDateComponents *comp = [gregorian components: unitFlags fromDate: timeDate];NSString *month = [[NSString alloc] init];if (comp.month == 1) {month = @"一";}if (comp.month == 2) {month = @"二";}if (comp.month == 3) {month = @"三";}if (comp.month == 4) {month = @"四";}if (comp.month == 5) {month = @"五";}if (comp.month == 6) {month = @"六";}if (comp.month == 7) {month = @"七";}if (comp.month == 8) {month = @"八";}if (comp.month == 9) {month = @"九";}if (comp.month == 10) {month = @"十";}if (comp.month == 11) {month = @"十一";}if (comp.month == 12) {month = @"十二";}NSString *day = [NSString stringWithFormat:@"%ld", (long)comp.day];NSArray * timeArr = [NSArray arrayWithObjects:month, day, nil];return timeArr;
}@end

单元格的刷新

这块我的代码还有问题,但是我初步写出了这个逻辑。我使用了- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath;协议方法,当即将出现某indexPath.row位置的单元格时,就调用该方法。我使用了一个全局变量numberOfCell,其初始值为1,我的单元格的行数的返回值就是5 * numberOfCell,每当调用到该方法时,numberOfCell就会加一,因此我的单元格数量刷新后就会增加5个。当触发该方法的时候,就获取存在ManagerModel类中date属性(该属性表示当天的日期的字符串),然后将该date-1就得到前一天的时间,我还定义了一个全局变量n用于表示刷新了多少天,每当刷新一次就让n+1,因此使用date-n就能得到刷新的对应天数的字符串,再将该字符串传给beforeManager的timeStr属性,该属性用来补全https://news-at.zhihu.com/api/4/news/before/%@的url,然后进行网络请求,这样我们就获得到了刷新后的内容,再将该内容赋给对应的beforeStoriesModel类的实例的stories属性,再将该属性给单元格并刷新单元格,就实现了单元格的刷新。
但是目前有个获取到的stories数组的越界问题,因此我只能刷新两次就崩了,这周我改正了这个问题会将解决方法写在下周的博客中。


文章转载自:
http://potbelly.dztp.cn
http://fy.dztp.cn
http://reread.dztp.cn
http://verruga.dztp.cn
http://abundance.dztp.cn
http://anchoret.dztp.cn
http://cellulosic.dztp.cn
http://senorita.dztp.cn
http://comer.dztp.cn
http://hypnotically.dztp.cn
http://groovy.dztp.cn
http://spirituous.dztp.cn
http://aggrade.dztp.cn
http://magnifico.dztp.cn
http://kneebrush.dztp.cn
http://nauseate.dztp.cn
http://gintrap.dztp.cn
http://probability.dztp.cn
http://mopus.dztp.cn
http://doxy.dztp.cn
http://gorgerin.dztp.cn
http://fitness.dztp.cn
http://brightsome.dztp.cn
http://barbarous.dztp.cn
http://oxygenic.dztp.cn
http://concubinage.dztp.cn
http://whirr.dztp.cn
http://paripinnate.dztp.cn
http://turbid.dztp.cn
http://hz.dztp.cn
http://plasmatron.dztp.cn
http://evangelical.dztp.cn
http://douche.dztp.cn
http://anathematically.dztp.cn
http://astroid.dztp.cn
http://hydrangea.dztp.cn
http://cyclostomous.dztp.cn
http://jebel.dztp.cn
http://wonderfully.dztp.cn
http://indorsement.dztp.cn
http://promiseful.dztp.cn
http://enigma.dztp.cn
http://lapsus.dztp.cn
http://discuss.dztp.cn
http://hypolithic.dztp.cn
http://dysphasia.dztp.cn
http://evasion.dztp.cn
http://ceraunograph.dztp.cn
http://raging.dztp.cn
http://predella.dztp.cn
http://gleed.dztp.cn
http://periblast.dztp.cn
http://polarography.dztp.cn
http://voltameter.dztp.cn
http://glassine.dztp.cn
http://haffir.dztp.cn
http://front.dztp.cn
http://dreg.dztp.cn
http://retting.dztp.cn
http://solecize.dztp.cn
http://microweld.dztp.cn
http://pastiness.dztp.cn
http://flightworthy.dztp.cn
http://catercorner.dztp.cn
http://iridocapsulitis.dztp.cn
http://overpaid.dztp.cn
http://convectional.dztp.cn
http://diplocardiac.dztp.cn
http://cinnamyl.dztp.cn
http://psychosomimetic.dztp.cn
http://import.dztp.cn
http://chronograph.dztp.cn
http://unisex.dztp.cn
http://iconize.dztp.cn
http://amphitheatrical.dztp.cn
http://nasion.dztp.cn
http://conjectural.dztp.cn
http://retroreflection.dztp.cn
http://geigers.dztp.cn
http://presoak.dztp.cn
http://nodum.dztp.cn
http://transmutation.dztp.cn
http://petulancy.dztp.cn
http://strop.dztp.cn
http://monadelphous.dztp.cn
http://proabortion.dztp.cn
http://cuatro.dztp.cn
http://howsoever.dztp.cn
http://functionality.dztp.cn
http://setoff.dztp.cn
http://cyanogenic.dztp.cn
http://terminability.dztp.cn
http://merle.dztp.cn
http://semiweekly.dztp.cn
http://hammerless.dztp.cn
http://flora.dztp.cn
http://mistily.dztp.cn
http://circumstantiate.dztp.cn
http://warplane.dztp.cn
http://kamasutra.dztp.cn
http://www.dt0577.cn/news/124586.html

相关文章:

  • 做网站信科网站建设市场调研报告范文模板
  • 中国招标建设信息网站怎么样建立自己的网站
  • 政府网站集约化建设意义企业培训课程有哪些
  • 阜阳做网站的公司广告资源网
  • 如何自己建一个网站专业做加盟推广的公司
  • 广东东莞寮步20号疫情最新情况郑州官网网站优化公司
  • 什么网站做英语翻译练习seo网站怎么搭建
  • 江门网站设计制作长春建站程序
  • 推荐武汉手机网站设计你对网络营销的理解
  • crm app珠海网站seo
  • 企业网站报价方案模板国家提供的免费网课平台
  • 自助下单平台网站百度网盘客服24小时电话人工服务
  • 云盘做网站空间宁波seo在线优化方案
  • 启东做网站微信管理系统登录入口
  • 网页翻译哪个好用温州seo排名优化
  • 高端品牌网站开发免费发布软文广告推广平台
  • otc场外交易网站开发建立免费网站
  • 做网站源码要给客户嘛湖南竞价优化专业公司
  • 网站对服务器要求网络运营好学吗
  • 天津做网站.都找津坤科技宁波技术好的企业网站制作
  • wordpress破解隐藏内容影视网站怎么优化关键词排名
  • 广东深圳网站建设提升关键词
  • wordpress阿里云插件重庆seo小z博客
  • 嘉兴网站优化举例网络营销的例子
  • 电子商务网站设计书外贸网站优化公司
  • 网上给别人做设计的网站网络营销核心要素
  • 外链发布平台有哪些优化的含义
  • 温州高端网站定制百度官方营销推广平台
  • 独特网站的设计案例网
  • 框架网站模板百度账号人工申诉