云豹短视频app源码中,用户定位与位置筛选功能如何实现
在云豹短视频app源码中,用户定位与位置筛选功能部分,使用的是类似通讯录样式的字母排序方式,以及右侧导航直达的跳转模式,这一设置的目的是尽量以最简洁的方式UI、用户最熟悉的排序方式便于用户使用该功能。
接下来我们将从两个步骤分析,该功能如何实现,短视频app源码搭建后的效果图如下:
1.数据处理部分如何实现
NSArray *infoA = [NSArray arrayWithArray:info];
if (_paging == 1) {[_dataArray removeAllObjects];[_indexArray removeAllObjects];_allNums = 0;
}
if (infoA.count <= 0) {[_tableView.mj_footer endRefreshingWithNoMoreData];
}else {[_dataArray addObjectsFromArray:infoA];
for (int i = 0; i < infoA.count; i++) {NSDictionary *subDic = infoA[i];[_indexArray addObject:minstr([subDic valueForKey:@"title"])];
NSArray *listA = [NSArray arrayWithArray:[subDic valueForKey:@"lists"]];_allNums += listA.count;
}
2.UI显示以及右侧导航直达处理
如何在短视频app源码中实现点击右侧导航,直达目前所在的城市呢?这就需要接入以下代码了:
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {return 30;
}
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {UIView *headerVie = [[UIView alloc]initWithFrame:CGRectMake(0, 0, _window_width, 30)];NSDictionary *subDic = _dataArray[section];UILabel *titleL = [[UILabel alloc]init];titleL.font = SYS_Font(16);titleL.textColor = RGB_COLOR(@"#323232", 1);titleL.text = minstr([subDic valueForKey:@"title"]);[headerVie addSubview:titleL];[titleL mas_makeConstraints:^(MASConstraintMaker *make) {make.left.equalTo(headerVie.mas_left).offset(15);make.centerY.equalTo(headerVie);}];return headerVie;
}
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{return 0;
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {return nil;
}
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{return 50;
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {return _dataArray.count;
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{NSDictionary *subDic = _dataArray[section];NSArray *listA = @[];if ([[subDic valueForKey:@"lists"] isKindOfClass:[NSArray class]]) {listA = [NSArray arrayWithArray:[subDic valueForKey:@"lists"]];}return listA.count;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{YBCitySelCell *cell = [YBCitySelCell cellWithTab:tableView index:indexPath];NSDictionary *subDic = _dataArray[indexPath.section];NSArray *listA = @[];if ([[subDic valueForKey:@"lists"] isKindOfClass:[NSArray class]]) {listA = [NSArray arrayWithArray:[subDic valueForKey:@"lists"]];}cell.cityNameL.text = listA[indexPath.row];return cell;
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{[self.tableView deselectRowAtIndexPath:indexPath animated:YES];NSDictionary *subDic = _dataArray[indexPath.section];NSArray *listA = @[];if ([[subDic valueForKey:@"lists"] isKindOfClass:[NSArray class]]) {listA = [NSArray arrayWithArray:[subDic valueForKey:@"lists"]];}NSString *cityName = listA[indexPath.row];if (self.citySelEvent) {self.citySelEvent(cityName);}[self clickNaviLeftBtn];
}
-(NSArray<NSString *> *)sectionIndexTitlesForTableView:(UITableView *)tableView{return _indexArray;
}
至此,短视频app源码中类似通讯录格式的位置选择功能就完成了,目前在定位方面,云豹短视频系统大陆地区使用的定位是腾讯地图SDK,它的优势是定位准确,但缺点是大陆外无法使用,大陆外使用的定位系统是谷歌SDK,目前这两家的定位系统是比较准确且好用的。
声明:以上内容为云豹科技原创,未经公司同意,禁止转载,否则将追究相关法律责任 http://www.yunbaokj.com/news/html/2088.html
云豹短视频app源码中,用户定位与位置筛选功能如何实现相关推荐
- 云豹短视频app源码中关于php--thinkcmf配置语言包的说明
云豹科技经常接到国外客户的单子,因此在语言模式设置上,需要实现灵活切换,以便不同语言的人员使用.云豹短视频app源码采用PHP做后台,Thinkcmf做框架,Thinkcmf本身是具有多语言模式的,默 ...
- 云豹短视频app源码中,标签选择功能的实现
在国内任意短视频app中,都能够看到"贴标签功能",云豹短视频app源码作为紧跟行业潮流的成品商业源码,自然也有该功能的实现,在云豹短视频app源码中,标签选择功能的实现要求是这样 ...
- 官方教程之短视频app源码接入openinstall实现免填邀请码功能
短视频app源码在上线后,为了实现大规模推广,会开发用户邀请的功能.用户邀请新用户进行注册,建立上下级关系后,邀请用户可以获得短视频app源码的奖励.为了防止新用户注册后,不填写邀请码,短视频app源 ...
- 短视频app源码、小视频源码存储功能如何实现?
在短视频app源码(小视频源码)开发中,考虑到后期用户上传短视频时需要大量应用到存储功能,故而需要实现这一功能,具体需要怎么做呢,本文将以云豹短视频app源码为例,为大家进行讲解. 一.阅读前请注意: ...
- 短视频app源码开发,音视频合成的实现
在短视频app源码开发中,音视频数据的处理是关键,尤其是音视频合成处理,只有有声音的短视频内容才更有吸引力,在短视频app源码中如何实现音视频的合成呢? 音频合成 调用方法 //音视频合成func a ...
- 如何开发仿抖音短视频APP源码?
如何开发仿抖音短视频APP源码? 流程列表 开发一个短视频最主要的流程分为 3 个,下面我将分步教你实现这 3 个流程下的各个功能点,功能点 API 可按需调用: 视频拍摄 a.启动拍摄 b.给拍摄添 ...
- 短视频app源码开发,短视频录制的实现
原理说明 利用SurfaceView预览视频 利用系统自带的MediaRecorder实现短视频app源码中短视频视频的录制 实例化 设置音频输入 设置输出格式 设置视频编码格式 设置输出路径 调用p ...
- 短视频App源码:如何搭建短视频社区
2019独角兽企业重金招聘Python工程师标准>>> 短视频App源码:如何搭建短视频社区 随着国内移动互联网的发展,中国的移动互联网时代已经来临,以快手.抖音为主的短视频平台迅速 ...
- 短视频源码,成品短视频app源码搭建第一步
随着短视频平台的兴起,短视频app也成为了移动应用市场的一大风口.开发一款成品的短视频app需要大量的资源和时间,而使用现成的小视频app源码则可以快速地搭建出一个基础功能完备的短视频app.本文将介 ...
最新文章
- linux自动挂载方法,Linux操作系统下硬盘手工和自动挂载的方法
- dlt645 保电 合闸_DLT645-2007简单整理
- 【Flutter】HTTP 网络操作 ( 引入 http 插件 | 测试网站 | Get 请求 | Post 请求 | 将响应结果转为 Dart 对象 | Future 异步调用 )
- USB转串口 FT232/PL2303/CH340 驱动以及使用体会
- Java8学习笔记(三)--方法引入
- RTT——IO设备管理篇·基本概念理解
- java 蓝牙指定连接失败_java – Android蓝牙连接 – 服务发现失败
- 数据结构与算法(Python)第三天
- 全局唯一序号生成方案
- 【云周刊】第141期:阿里正式发布《Java开发手册》终极版!绝对珍藏!
- scala学习笔记一------初步了解scala
- (2017.03.12更新)CnCrypt文件保险箱1.19,兼容TrueCrypt加密卷
- 奇趣分享综合趣事百科文章类型discuz模板
- 《军团要塞2》绘画渲染
- 百度热力图颜色说明_各大软件地图中的热力图是什么?如何正确使用?收藏了...
- 【WebGIS实例】(1)MapboxGL绘制端点有符号的线
- ice 的 Nonmutating 和 Idempotent
- java中a z正则表达式,Java正则字符类[a-zA-Z]匹配
- 智能车竞赛技术研讨会
- 将String转化成HTML格式