设为首页收藏本站

一款轻量的模糊查询工具库fuse-swift

[复制链接]
查看1891 | 回复0 | 2019-11-8 14:37:40 | 显示全部楼层 |阅读模式
IOS开源
授权协议: MIT
开发语言: object-c 
作者: targetcloud
项目地址: https://github.com/targetcloud/baisibudejie
百思不得姐4.5.6版本高仿



你觉得赞,请Star


运行效果











本DEMO高仿最新版百思不得姐(4.5.6),运用了以下第三方框架 DACircularProgress FLAnimatedImage pop ...



另外自己定义了一个导航条控件TGSegment,自己的导航条segment与UINavigationController的导航条相互融合,效果见GIF图,这是很多流行的APP使用的功能,当向上滚动视图时,自己的导航条与UINavigationController的bar整合在一起, 同时融合的导航条(高度在64)变得透明,这也是很多流行APP使用的全屏穿透并有透视效果,如果向下滚动视图时,并达到一定速度,那么segment又从UINavigationController的导航条中分离出来,此时的导航条效果是变高了,高出的部分即segment的高度(两者的相加的高度为:64+segment高度)。



除了上面融合分离透视效果外,作者还加入了在segment的导航条最后的更多功能,点击更多按钮,即会弹出一个控制器,让你选择需要跳转的控制器,这也是很多流行APP使用的功能,如网易新闻等。



本DEMO的数据都用Charles抓取,可能后面的版本的请求数据路径地址在将来会有变化,读者可以自行修改,或者告诉作者修改。



在DEMO中,视频、声音、GIF播放均已实现,视频播放不弹出新的控制器进行播放,而是直接在cell上进行播放,GIF及图片缓存是使用自己的缓存实现的,另外评论界面中的语音播放功能也已经加入。



本DEMO中,也已经实现历史穿越功能,点击精华导航条右上角按钮即可穿越到旧版本,即呈现(全部 视频 声音 图片 段子)这5个控制器的界面。



使用TGSegment的代码如下(若要显示更多按钮功能,那么//.showMore(YES)去掉这句注释即可,本示例使用的链式编程语法)
  1. @interface TGEssenceNewVC ()
  2. @property (nonatomic, weak) TGSementBarVC *segmentBarVC;
  3. @end

  4. @implementation TGEssenceNewVC

  5. -(UIStatusBarStyle)preferredStatusBarStyle{
  6.     return UIStatusBarStyleLightContent;//UIStatusBarStyleDefault;
  7. }

  8. - (TGSementBarVC *)segmentBarVC {
  9.     if (!_segmentBarVC) {
  10.         TGSementBarVC *vc = [[TGSementBarVC alloc] init];
  11.         [self addChildViewController:vc];
  12.         _segmentBarVC = vc;
  13.     }
  14.     return _segmentBarVC;
  15. }

  16. - (void)viewDidLoad {
  17.     [super viewDidLoad];
  18.     self.automaticallyAdjustsScrollViewInsets = NO;
  19.     self.segmentBarVC.segmentBar.frame = CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 35);
  20.     self.segmentBarVC.view.frame = self.view.bounds;
  21.     [self.view addSubview:self.segmentBarVC.view];
  22.     NSArray *items = @[@"推荐", @"视频", @"图片", @友情链接:品牌排行榜

  23. "段子",@"排行",@"互动区",@"网红",@"社会",@"投票",@"美女",@"冷知识",@"游戏"];
  24.     NSMutableArray* childVCs = [NSMutableArray array];
  25.     [childVCs addObject:[[TGRecommendedVC alloc] init]];
  26.     [childVCs addObject:[[TGVideoPlayVC alloc] init]];
  27.     [childVCs addObject:[[TGPictureVC alloc] init]];
  28.     [childVCs addObject:[[TGJokesVC alloc] init]];
  29.     [childVCs addObject:[[TGRankingVC alloc] init]];
  30.     [childVCs addObject:[[TGInteractVC alloc] init]];
  31.     [childVCs addObject:[[TGRedNetVC alloc] init]];
  32.     [childVCs addObject:[[TGSocietyVC alloc] init]];
  33.     [childVCs addObject:[[TGVoteVC alloc] init]];
  34.     [childVCs addObject:[[TGBeautyVC alloc] init]];
  35.     [childVCs addObject:[[TGColdKnowledgeVC alloc] init]];
  36.     [childVCs addObject:[[TGGameVC alloc] init]];
  37.     [self.segmentBarVC setupWithItems:items childVCs:childVCs];

  38.     [self.segmentBarVC.segmentBar updateViewWithConfig:^(TGSegmentConfig *config) {
  39.         config.selectedColor([UIColor lightTextColor])
  40.               .normalColor([UIColor lightTextColor])
  41.               .selectedFont([UIFont systemFontOfSize:14])
  42.               .normalFont([UIFont systemFontOfSize:13])
  43.               .indicateExtraW(8)
  44.               .indicateH(2)
  45.               .indicateColor([UIColor whiteColor])
  46.               //.showMore(YES)
  47.               .moreCellBGColor([[UIColor grayColor] colorWithAlphaComponent:0.3])
  48.               .moreBGColor([UIColor clearColor])
  49.               .moreCellFont([UIFont systemFontOfSize:13])
  50.               .moreCellTextColor(NavTinColor)
  51.               .moreCellMinH(30)
  52.               .showMoreBtnlineView(YES)
  53.               .moreBtnlineViewColor([UIColor lightTextColor])
  54.               .moreBtnTitleFont([UIFont systemFontOfSize:13])
  55.               .moreBtnTitleColor([UIColor lightTextColor])
  56.               .margin(18)
  57.               .barBGColor(NavTinColor)
  58.         ;
  59.     }];
  60. }
  61. @end
复制代码



截图

1、


2





3







4







5







6







7







8







9







10



帖子地址: 

您需要登录后才可以回帖 登录 | 点击加入

本版积分规则