CN108391075B - 一种视频播放Cell无间隔刷新的方法 - Google Patents
一种视频播放Cell无间隔刷新的方法 Download PDFInfo
- Publication number
- CN108391075B CN108391075B CN201810165213.8A CN201810165213A CN108391075B CN 108391075 B CN108391075 B CN 108391075B CN 201810165213 A CN201810165213 A CN 201810165213A CN 108391075 B CN108391075 B CN 108391075B
- Authority
- CN
- China
- Prior art keywords
- video
- cell
- video playing
- refreshing
- playing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明涉及一种视频播放Cell无间隔刷新的方法,包括如下步骤:当视频播放Cell收到点击播放ClickPlay事件时,调用sharedInstance创建并返回视频视窗VideoBox单例,将返回的视频视窗VideoBox单例添加到视频播放Cell上,视频播放Cell发出视频播放请求给数据服务平台DataService,查询待播放视频的相关信息,当视频播放Cell触发Cell刷新事件时,视频视窗VideoBox单例继续进行视频播放,仅视频播放Cell进行刷新,视频播放Cell刷新完毕后,将视频视窗VideoBox单例恢复到视频播放Cell上。本发明,视频播放不受Cell刷新的影响,在数据源有改变时,Cell刷新不会导致视频播放卡顿,算法简单,效果好,提升用户体验。
Description
技术领域
本发明涉及iOS中TableView(即UITableView,表视图)控件使用及优化技术领域,具体说是一种视频播放Cell无间隔刷新的方法。
背景技术
现有的iOS***中,支持通过表格数据的形式展现人机交互视图,能为用户带来丰富多彩的UI效果。
在iOS***中,要实现表格数据展示,最常用的做法就是使用UITableView生成表视图,UITableView继承自UIScrollView,因此支持垂直滚动,而且性能极佳。在表视图中,每一行都是一个UITableViewCell对象,由这些UITableViewCell对象组成了一个用户可以滚动的多行单列列表。
UITableView有分组和不分组两种样式,可以在storyboard或者是用代码设置。表视图还可为其添加索引值,比如通讯录中右侧索引列表,每一个索引项对应其节头标题。
使用时,UITableView需要一个数据源(dataSource)来显示数据,UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等。凡是遵守UITableViewDataSource协议的OC对象,都可以是UITableView的数据源。展示数据的过程大体如下:
(1)查询数据源,获取一共有多少组数据需要显示;
(2)查询每组数据,获取每一组有多少行数据需要显示;
(3)查询每行数据,获取每行显示的具体内容。
在展示、播放视频时,UITableViewCell对象需要显示的是相应的视频,则多行单列列表由若干视频播放Cell(VideoCell)构成。在数据源有改变时,需要重新载入TableView所有Cell(UITableViewCell),此时就涉及到Cell的刷新。iOS中TableView有以下几种刷新:
第一种:tableview的刷新 [self.tableView reloadData];
reloadData是刷新整个UITableView,有时候,我们可能需要局部刷新。比如:只刷新一个Cell、只刷新一个section等等。这个时候在调用reloadData方法,虽然用户看不出来,但是有些浪费资源。
第二种:刷新局部的Cell
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath,nil] withRowAnimation:UITableViewRowAnimationFade];
这样就可以很方便的刷新第一个section的第一个Cell。虽然看起来代码多了,但是确实比较节省资源。尽量少的刷新,也是UITableView的一种优化。
第三种:局部刷新section
NSIndexSet *indexSet = [[NSIndexSet alloc] initWithIndex:0];
[self.tableView reloadSections:indexSet withRowAnimation:UITableViewRowAnimationFade];
上面这段代码是刷新第0个section。
但是,现有的技术方案中,在刷新时会出现卡顿的现象,通常在TableView滑动的时候卡顿情况尤其突出,影响使用体验。究其原因,或许是因为UITableViewCell的刷新机制,是从Cell缓存中提取新的Cell来进行更新,从而会影响到正在播放中的视频。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种视频播放Cell无间隔刷新的方法,视频播放不受Cell刷新的影响,在数据源有改变时,Cell刷新不会导致视频播放卡顿,算法简单,效果好,提升用户体验。
为达到以上目的,本发明采取的技术方案是:
一种视频播放Cell无间隔刷新的方法,其特征在于,包括如下步骤:
当视频播放Cell收到点击播放ClickPlay事件时,调用sharedInstance创建并返回视频视窗VideoBox单例,
将返回的视频视窗VideoBox单例添加到视频播放Cell上,
视频播放Cell发出视频播放请求给数据服务平台DataService,查询待播放视频的相关信息,
当视频播放Cell触发Cell刷新事件时,视频视窗VideoBox单例继续进行视频播放,仅视频播放Cell进行刷新,
视频播放Cell刷新完毕后,将视频视窗VideoBox单例恢复到视频播放Cell上。
在上述技术方案的基础上,数据服务平台DataService接收视频播放Cell发出的视频播放请求,触发获取有关歌曲fetchRelateSong事件,
根据请求中携带的信息,判断请求获取的视频是否存在,
当不存在相关视频时,返回报错信息,
当存在相关视频时,将视频信息封装为信息更新数据包updateInfo,调用自定义刷新类reloadTableIndex,将更新数据包updateInfo返回给视频播放Cell。
在上述技术方案的基础上,所述更新数据包updateInfo中包含刷新标识,所述刷新标识用于使接收到该标识的视频播放Cell进行刷新操作。
在上述技术方案的基础上,视频播放Cell接收到更新数据包updateInfo后,解析数据包,获得刷新标识,触发Cell刷新事件updateWithInfo。
本发明所述的视频播放Cell无间隔刷新的方法,视频播放不受Cell刷新的影响,在数据源有改变时,Cell刷新不会导致视频播放卡顿,算法简单,效果好,提升用户体验。
附图说明
本发明有如下附图:
图1 本发明的流程图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
如图1所示,本发明所述的视频播放Cell无间隔刷新的方法,包括如下步骤:
当视频播放Cell收到点击播放ClickPlay事件时,调用sharedInstance创建并返回视频视窗VideoBox单例,
将返回的视频视窗VideoBox单例添加到视频播放Cell上,
视频播放Cell发出视频播放请求给数据服务平台DataService,查询待播放视频的相关信息,
当视频播放Cell触发Cell刷新事件时,视频视窗VideoBox单例继续进行视频播放,仅视频播放Cell进行刷新,
视频播放Cell刷新完毕后,将视频视窗VideoBox单例恢复到视频播放Cell上。
上述方案中,视频视窗VideoBox单例不受视频播放Cell刷新的影响,确保了视频播放的无卡顿,视频播放Cell也能根据指令完成刷新,保证了视频播放Cell刷新时视频视窗无间隔。
在上述技术方案的基础上,数据服务平台DataService接收视频播放Cell发出的视频播放请求,触发获取有关歌曲fetchRelateSong事件,
根据请求中携带的信息,判断请求获取的视频是否存在,
当不存在相关视频时,返回报错信息,
当存在相关视频时,将视频信息封装为信息更新数据包updateInfo,调用自定义刷新类reloadTableIndex,将更新数据包updateInfo返回给视频播放Cell。
在上述技术方案的基础上,所述更新数据包updateInfo中包含刷新标识,所述刷新标识用于使接收到该标识的视频播放Cell进行刷新操作。
在上述技术方案的基础上,视频播放Cell接收到更新数据包updateInfo后,解析数据包,获得刷新标识,触发Cell刷新事件updateWithInfo。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (4)
1.一种视频播放Cell无间隔刷新的方法,其特征在于,包括如下步骤:
当视频播放Cell收到点击播放ClickPlay事件时,调用sharedInstance创建并返回视频视窗VideoBox单例,
将返回的视频视窗VideoBox单例添加到视频播放Cell上,
视频播放Cell发出视频播放请求给数据服务平台DataService,查询待播放视频的相关信息,
当视频播放Cell触发Cell刷新事件时,视频视窗VideoBox单例继续进行视频播放,仅视频播放Cell进行刷新,
视频播放Cell刷新完毕后,将视频视窗VideoBox单例恢复到视频播放Cell上。
2.如权利要求1所述的视频播放Cell无间隔刷新的方法,其特征在于:数据服务平台DataService接收视频播放Cell发出的视频播放请求,触发获取有关歌曲fetchRelateSong事件,
根据请求中携带的信息,判断请求获取的视频是否存在,
当不存在相关视频时,返回报错信息,
当存在相关视频时,将视频信息封装为信息更新数据包updateInfo,调用自定义刷新类reloadTableIndex,将信息更新数据包updateInfo返回给视频播放Cell。
3.如权利要求2所述的视频播放Cell无间隔刷新的方法,其特征在于:所述信息更新数据包updateInfo中包含刷新标识,所述刷新标识用于使接收到该标识的视频播放Cell进行刷新操作。
4.如权利要求3所述的视频播放Cell无间隔刷新的方法,其特征在于:视频播放Cell接收到信息更新数据包updateInfo后,解析数据包,获得刷新标识,触发Cell刷新事件updateWithInfo。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810165213.8A CN108391075B (zh) | 2018-02-27 | 2018-02-27 | 一种视频播放Cell无间隔刷新的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810165213.8A CN108391075B (zh) | 2018-02-27 | 2018-02-27 | 一种视频播放Cell无间隔刷新的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108391075A CN108391075A (zh) | 2018-08-10 |
CN108391075B true CN108391075B (zh) | 2020-10-30 |
Family
ID=63069448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810165213.8A Active CN108391075B (zh) | 2018-02-27 | 2018-02-27 | 一种视频播放Cell无间隔刷新的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108391075B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582193B (zh) * | 2018-11-30 | 2021-01-29 | 北京微播视界科技有限公司 | 列表管理组中的项cell的控制显示方法及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677366A (zh) * | 2016-02-26 | 2016-06-15 | 四川长虹电器股份有限公司 | 基于iOS***中UITableView实现无限循环滚动选择的方法 |
CN106528247A (zh) * | 2016-11-30 | 2017-03-22 | 北京小米移动软件有限公司 | 数据刷新方法及装置 |
CN107066259A (zh) * | 2017-03-08 | 2017-08-18 | 武汉斗鱼网络科技有限公司 | 一种ios***中视图控制器的简化方法及装置 |
CN107329795A (zh) * | 2017-06-23 | 2017-11-07 | 北京酷我科技有限公司 | 一种TableView优化方法 |
CN107729114A (zh) * | 2017-10-31 | 2018-02-23 | 北京酷我科技有限公司 | 一种播放控件的呈现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102472551B1 (ko) * | 2016-02-19 | 2022-12-01 | 삼성전자주식회사 | 전자 장치 및 전자 장치에서의 위치 추정 방법 |
-
2018
- 2018-02-27 CN CN201810165213.8A patent/CN108391075B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677366A (zh) * | 2016-02-26 | 2016-06-15 | 四川长虹电器股份有限公司 | 基于iOS***中UITableView实现无限循环滚动选择的方法 |
CN106528247A (zh) * | 2016-11-30 | 2017-03-22 | 北京小米移动软件有限公司 | 数据刷新方法及装置 |
CN107066259A (zh) * | 2017-03-08 | 2017-08-18 | 武汉斗鱼网络科技有限公司 | 一种ios***中视图控制器的简化方法及装置 |
CN107329795A (zh) * | 2017-06-23 | 2017-11-07 | 北京酷我科技有限公司 | 一种TableView优化方法 |
CN107729114A (zh) * | 2017-10-31 | 2018-02-23 | 北京酷我科技有限公司 | 一种播放控件的呈现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108391075A (zh) | 2018-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106066863B (zh) | 一种直播平台中直播房间的展示方法与装置 | |
US20210049204A1 (en) | Inserting information into playing content | |
US7403958B2 (en) | Synchronization-replication concurrency using non-shared snapshot query on a history table at read-uncommitted isolation level | |
US8560584B2 (en) | Database partition management | |
CN102214236B (zh) | 一种海量数据处理方法和*** | |
CN103747301B (zh) | 一种广告投放方法、***及存储广告播放记录文件 | |
CN105183898A (zh) | 数据同步方法和数据同步*** | |
CN104506625A (zh) | 一种提升云数据库元数据节点可靠性的方法 | |
US9984056B2 (en) | Display of user comments to timed presentation | |
US20110067021A1 (en) | Electronic device and method of updating software thereof | |
CN108391075B (zh) | 一种视频播放Cell无间隔刷新的方法 | |
GB2579453A (en) | Device and method for switching between message threads | |
CN101901270A (zh) | 一种支持海量存储的内存数据库方法 | |
CN109063149A (zh) | 一种个性化推送屏保图片的方法 | |
CN110322833A (zh) | 一种显示驱动方法、控制显示面板发光的方法及显示面板 | |
CN106293953B (zh) | 一种访问共享显示数据的方法及*** | |
CN104090755A (zh) | Android Launcher界面中长应用名称的垂直滚动显示方法 | |
CN105912270A (zh) | 一种面向pm的访存请求解析装置与方法 | |
US20090248620A1 (en) | Interacting methods of data extraction | |
CN105049787A (zh) | 一种b/s架构下基于实时缓存和主动推送的监控自动化***客户端数据更新方法 | |
CN111338767B (zh) | PostgreSQL主从数据库自动切换***及方法 | |
CN105137839B (zh) | 一种基于内存数据库的云台控制方法及其*** | |
KR20180125797A (ko) | 외국어 학습 시스템 | |
CN112069332A (zh) | 一种实时高效的广告物料投放和获取方法及*** | |
CN101316339A (zh) | 在同一字库中显示字符不同表现形式的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |