CN112860154A - 日历中的日程显示方法及装置、可读存储介质及电子设备 - Google Patents
日历中的日程显示方法及装置、可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN112860154A CN112860154A CN202110286838.1A CN202110286838A CN112860154A CN 112860154 A CN112860154 A CN 112860154A CN 202110286838 A CN202110286838 A CN 202110286838A CN 112860154 A CN112860154 A CN 112860154A
- Authority
- CN
- China
- Prior art keywords
- schedule
- schedule block
- area
- block
- display
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0483—Interaction with page-structured environments, e.g. book metaphor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Calculators And Similar Devices (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开涉及计算机技术领域,提供了一种日历中的日程显示方法及装置、计算机可读存储介质和电子设备。其中,上述方法包括:响应于日程的创建操作,在日历中确定该日程对应的待添加日程块的初始显示区域;在待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息,其中,第一预设区域包括为各日程块预先配置的日程信息展示区域;根据第一预设区域的信息,确定初始显示区域和已有日程块的当前显示区域之间的位置关系;根据位置关系,在待添加日程块和已有日程块中确定出待处理的日程块集合和日程块集合中的各日程块的目标显示区域,并显示日程块集合中的日程块。本公开能提高日程显示的准确性。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种日历中的日程显示方法、日程显示装置、计算机可读存储介质以及电子设备。
背景技术
在日历工具的使用过程中,通常会遇到日程之间存在时间冲突的情况。相关技术中,在日历视图中,根据存在时间冲突的日程块的数量,等分对应的区域宽度,以对存在时间冲突的各日程块进行放置;或按比例压缩日程字段区域与整体日程块的尺寸,部分重叠排列存在时间冲突的日程块。
然而,相关技术中的日程显示方法,当存在时间冲突的日程块的数量较多时,会影响各日程块的主题信息呈现的完整性和准确性,降低用户对日程事件的信息获取效率。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种日历中的日程显示方法及装置、计算机可读存储介质及电子设备,进而至少在一定程度上改善日历中的日程信息的显示准确性,提高用户对日程事件的信息获取效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供了一种日历中的日程显示方法,包括:
响应于日程创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域;
在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息,其中,所述第一预设区域包括为各日程块预先配置的日程信息展示区域;
根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系;
根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
在本公开的一种示例性实施例中,基于前述方案,所述方法还包括:
为日程块预先配置第一预设区域和第二预设区域,其中,所述第一预设区域在第一方向的最大显示尺寸等于第一预设阈值,所述第二预设区域在第二方向的最大显示尺寸等于第二预设阈值,所述第二方向与所述第一方向垂直。
在本公开的一种示例性实施例中,基于前述方案,所述获取第一预设区域的信息,包括:
获取所述第一预设阈值;
所述根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系,包括:
根据所述第一预设阈值,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系。
在本公开的一种示例性实施例中,基于前述方案,所述根据所述第一预设阈值,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系,包括:
获取所述第一预设阈值在日历视图的时间坐标轴中对应的第一时间差值;
确定所述待添加日程块的第一开始时间与所述已有日程块的第二开始时间之间的第二时间差值;
确定所述第二时间差值小于所述第一时间差值的已有日程块为第一已有日程块,并确定所述初始显示区域和所述第一已有日程块的当前显示区域之间的位置关系为第一关系;
确定所述第二时间差值大于或等于所述第一时间差值的已有日程块为第二已有日程块,并确定所述初始显示区域和所述第二已有日程块的当前显示区域之间的位置关系为第二关系。
在本公开的一种示例性实施例中,基于前述方案,所述根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,包括:
在所述位置关系为第一关系时,根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域;
根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界;
根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域。
在本公开的一种示例性实施例中,基于前述方案,所述根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域,包括:
在多个所述第一已有日程块的当前显示区域在所述第二方向上相邻时,根据所述多个第一已有日程块的当前显示区域对应的连续区域确定出所述第一待放置区域。
在本公开的一种示例性实施例中,基于前述方案,所述根据所述位置关系,确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,包括:
在所述位置关系为第二关系且存在第一目标已有日程块时,根据各所述第一目标已有日程块的所述第二预设区域在所述第二方向的目标显示边界、所述第一目标已有日程块的当前显示区域在所述第二方向的目标显示边界,以确定出一个或多个第一待放置区域;
根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界;
根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域;
其中,所述第一目标已有日程块包括开始时间小于所述待添加日程块的开始时间的第二已有日程块,所述目标显示边界为对应的区域在对应的方向上位置靠后的显示边界。
在本公开的一种示例性实施例中,基于前述方案,根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出所述待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界,包括:
在所述一个或多个第一待放置区域中,确定出目标待放置区域;
将所述待添加日程块和所述目标待放置区域中的第一已有日程块,确定为所述待处理的日程块集合中的日程块;
根据所述待处理的日程块集合中的日程块的数量均分所述目标待放置区域在所述第二方向的最大显示尺寸,以确定出所述待处理的日程块集合中各日程块的目标显示区域在所述第二方向的第一显示尺寸;
对所述待处理的日程块集合中的各日程块的开始时间和结束时间所确定的各时间差值进行降序排序,以确定出各日程块在所述第二方向的排布顺序;
根据所述排布顺序和所述第一显示尺寸,确定出所述待处理的日程块集合中的各日程块在所述第二方向的显示边界。
在本公开的一种示例性实施例中,基于前述方案,所述在所述一个或多个第一待放置区域中,确定出目标待放置区域,包括:
在所述第一待放置区域为一个时,确定所述第一待放置区域为所述目标待放置区域;
在所述第一待放置区域为多个时,执行以下处理过程:
针对每个所述第一待放置区域,根据所述第一待放置区域中的第一已有日程块的数量和所述待添加日程块的数量之和,对所述第一待放置区域在所述第二方向的最大显示尺寸进行均分,以得到待显示尺寸;
在各所述第一待放置区域对应的待显示尺寸相同时,将在所述第二方向有且仅有一个相邻的其它的第一待放置区域的任一第一待放置区域确定为所述目标待放置区域;
在各所述第一待放置区域对应的待显示尺寸不相同时,确定所述待显示尺寸最大的所述第一待放置区域为所述目标待放置区域。
在本公开的一种示例性实施例中,基于前述方案,所述根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,包括:
在所述位置关系为第二关系且存在第二目标已有日程块时,确定所述第二目标已有日程块为所述待处理的日程块集合中的日程块;
根据所述待添加日程块的目标显示区域中的所述第一预设区域在所述第一方向的目标显示边界、所述第二预设区域在所述第二方向的目标显示边界、以及所述目标显示区域在所述第二方向的目标显示边界,确定出第二待放置区域;
根据所述第二目标已有日程块的数量对所述第二待放置区域在所述第二方向的显示尺寸进行均分,以得到各所述第二目标已有日程块的目标显示区域在所述第二方向的第二显示尺寸;
根据各所述第二目标已有日程块在所述第二方向的原始排布顺序和所述第二显示尺寸,确定出各所述第二目标已有日程块的目标显示区域在所述第二方向的显示边界;
根据各所述第二目标已有日程块的时间区间,确定出各所述第二目标已有日程块的目标显示区域在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出各所述第二目标已有日程块的目标显示区域;
其中,所述目标显示边界为对应的区域在对应的方向上位置靠后的显示边界,所述第二目标已有日程块包括开始时间大于所述待添加日程块的开始时间的第二已有日程块,在所述已有日程块中仅包括所述第二目标已有日程块时,所述待添加日程块的目标显示区域为所述待添加日程块的初始显示区域。
在本公开的一种示例性实施例中,基于前述方案,所述日程信息展示区域展示日程事件的主题信息,所述第二预设区域用于展示所述日程块的日历本样式。
在本公开的一种示例性实施例中,基于前述方案,所述方法还包括:
在所述待添加日程块对应的第一时间区间和各已有日程块对应的第二时间区间均不重叠时,根据所述待添加日程块的初始显示区域在所述日历中显示所述待添加日程块;
其中,所述待添加日程块的初始显示区域通过以下方式确定:
根据所述待添加日程块的时间区间,确定所述待添加日程块在第一方向的显示边界;
将日历视图的显示区域在第二方向的显示边界,确定为所述待添加日程块在第二方向的初始显示边界;
根据所述第一方向的显示边界和所述第二方向的初始显示边界,确定所述待添加日程块的初始显示区域。
根据本公开的第二方面,提供了一种日历中的日程显示装置,包括:
初始显示区域确定模块,被配置为响应于日程创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域;
预设区域信息获取模块,被配置为在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息,其中所述第一预设区域包括为各日程块预先配置的日程信息展示区域;
位置关系确定模块,被配置为根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系;
目标显示区域确定模块,被配置为根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
根据本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的日历中的日程显示方法。
根据本公开实施例的第四方面,提供了一种电子设备,包括:处理器;以及,存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的日历中的日程显示方法。
由上述技术方案可知,本公开示例性实施例中的日历中的日程显示方法、日历中的日程显示装置,以及实现所述日历中的日程显示方法的计算机可读存储介质及电子设备,至少具备以下优点和积极效果:
在本公开的一些实施例所提供的技术方案中,首先,响应于日程的创建操作,在日历中确定日程对应的待添加日程块的初始显示区域;然后,在待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息;根据该第一预设区域的信息,确定初始显示区域和所述已有日程块的当前显示区域之间的位置关系;根据确定的位置关系,在待添加日程块和已有日程块中确定出待处理的日程块集合和日程块集合中的各日程块的目标显示区域,并显示日程块集合中的日程块。与相关技术相比,一方面,本公开在日程存在时间冲突时,基于获取的第一预设区域的信息所确定的位置关系,可以对各日程块的显示区域进行调整,保证各日程块的第一预设区域互相不被覆盖,从而提高各日程块的信息显示的准确性和完整性,进而可以更加直观的展示各日程块的具体内容,提高用户查看获取具体日程信息的效率;另一方面,本公开基于获取的第一预设区域的信息所确定的位置关系,对存在时间冲突的日程块的显示区域进行调整,可以在保证各日程块的显示信息完整的同时,为各日程块分配相对更多的显示面积,避免日程块之间的挤压,提高图形用户界面的显示空间的利用效率。
本公开应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本公开实施例的一种日历中的日程显示方法及装置的示例性系统架构的示意图;
图2示出本公开一示例性实施例中的日历中的日程显示方法的流程示意图;
图3示出本公开一示例性实施例中待添加日程块和已有日程块的时间区间不重叠时的日程排布示意图;
图4示出本公开一示例性实施例中第一预设区域和第二预设区域在日程块中的位置示意图;
图5示出本公开一示例性实施例中的确定位置关系的方法的流程示意图;
图6示出本公开一示例性实施例中在位置关系为第一关系时对应的确定待处理的日程块集合和日程块集合中的各日程块的目标显示区域的方法的流程示意图;
图7示出本公开一示例性实施例中第一待放置区域的示意图;
图7A示出本公开一示例性实施例中第一待放置区域的示意图;
图7B示出本公开一示例性实施例中第一待放置区域的示意图;
图7C示出本公开一示例性实施例中第一待放置区域的示意图;
图7D示出本公开一示例性实施例中第一待放置区域的示意图;
图8示出本公开一示例性实施例中根据第一待放置区域,确定待处理的日程块集合和日程块集合中的各日程块在第二方向的显示边界的方法的流程示意图;
图9示出本公开一示例性实施例中在位置关系为第一关系时日程排布前后示意图;
图10示出本公开一示例性实施例中位置关系为第二关系时对应的确定待处理的日程块集合和日程块集合中的各日程块的目标显示区域的方法的流程图;
图11A示出本公开一示例性实施例中第一待放置区域的示意图;
图11B示出本公开一示例性实施例中第一待放置区域的示意图;
图11C示出本公开一示例性实施例中在位置关系为第二关系时的日程排布前后示意图;
图12示出本公开一示例性实施例中在存在第二目标已有日程块时,确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域的方法的流程示意图;
图13示出本公开一示例性实施例中对第二目标已有日程块进行重新排布前后的示意图;
图14示出本公开一示例性实施例中日历中的日程显示装置的结构示意图;
图15示出本公开示例性实施例中电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
本说明书中使用用语“一个”、“一”、“该”和“所述”用以表示存在一个或多个要素/组成部分/等;用语“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”和“第二”等仅作为标记使用,不是对其对象的数量限制。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。
图1示出了可以应用本公开实施例的一种日历中的日程显示方法及装置的示例性系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103、104中的一个或多个,网络105和服务器106。网络105用以在终端设备101、102、103、104和服务器106之间提供通信链路的介质。网络105可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103、104可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载设备(例如车载显示屏)等,但并不局限于此。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器106可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
本公开实施例所提供的日历中的日程显示方法可以在服务器106执行,相应地,日历中的日程显示装置一般设置于服务器106中。当然,本公开实施例所提供的日历中的日程显示方法也可以由终端设备101、102、103、104执行,相应的,日历中的日程显示装置也可以设置于终端设备101、102、103、104中。
举例而言,用户可以在终端设备101、102、103、104中触发日程创建操作,服务器106可以响应该日程的创建操作,获取该日程的创建操作对应的待添加日程块的开始时间和结束时间,根据该待添加日程块的开始时间和结束时间确定该日程的初始显示区域,并判断该日程的开始时间和结束时间所对应的时间区间是否和当前日期已有的各日程块的开始时间和结束时间所对应的时间区间存在重叠部分,如果否,则将初始显示区域确定为日程创建操作对应的待添加日程块的初始显示区域,如果是,则获取第一预设区域的信息,根据第一预设区域的信息,确定日程创建操作对应的待添加日程块和已有的日程块的位置关系;根据确定的位置关系,在待添加日程块和当前日期已有的各日程块中确定出需要进行显示区域调整的待处理的日程块的集合,并根据确定的位置关系,对待处理的日程块集合的日程的显示区域进行调整,以确定待处理的日程块集合中的各日程块的目标显示区域,并根据目标显示区域显示待处理的日程块集合中的各日程块。其中,第一预设区域包括为各日程块预先配置的日程信息展示区域。
但本领域技术人员容易理解的是,上述应用场景仅是用于举例,本示例性实施例中并不以此为限。
在日历工具的使用过程中,常常会由于多个日程块的时间区间存在重叠部分而导致日程块显示区域存在冲突。
相关技术中,会根据存在时间冲突的日程块的数量,等分日历视图中对应区域的宽度,放置各日程块;或对存在时间冲突的日程块压缩字段显示区域,使得部分重叠以放置各日程块。
然而,相关技术中,通过对日程模块进行简单的挤压、叠加等方式排布存在冲突的日程块,会影响各日程块的日程内容的显示完整性,用户在查看具体内容时,需点击进入详情查看完整信息,会降低用户的信息获取效率。
基于上述一个或多个问题,在本公开的实施例中提供了一种日历中的日程显示方法,至少在一定程度上克服上述相关技术中存在的缺陷。该视频日历中的日程显示方法可以应用于上述服务器106,也可以应用于上述终端设备101、102、103、104中的一个或多个;还可以同时应用于上述终端设备101、102、103、104中的一个或多个以及上述服务器106;本示例性实施例中对此不做特殊限定。
图2示出本公开一示例性实施例中日历中的日程显示方法的流程示意图。参考图2,该方法包括:
步骤S210,响应于日程创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域;
步骤S220,在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息,其中,所述第一预设区域包括为各日程块预先配置的日程信息展示区域;
步骤S230,根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系;
步骤S240,根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
在图2所示实施例所提供的技术方案中,首先,响应于日程的创建操作,在日历中确定日程对应的待添加日程块的初始显示区域;然后,在待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息;根据该第一预设区域的信息,确定初始显示区域和所述已有日程块的当前显示区域之间的位置关系;根据确定的位置关系,在待添加日程块和已有日程块中确定出待处理的日程块集合和日程块集合中的各日程块的目标显示区域,并显示日程块集合中的日程块。与相关技术相比,一方面,本公开在日程存在时间冲突时,基于获取的第一预设区域的信息所确定的位置关系,可以对各日程块的显示区域进行调整,保证各日程块的第一预设区域互相不被覆盖,从而提高各日程块的信息显示的准确性和完整性,进而可以更加直观的展示各日程块的具体内容,提高用户获取具体日程信息的效率;另一方面,本公开基于获取的第一预设区域的信息所确定的位置关系,对存在时间冲突的日程块的显示区域进行调整,可以在保证各日程块的显示信息完整的同时,为各日程块分配相对更多的显示面积,避免日程块之间的挤压,提高图形用户界面的显示空间的利用效率。
以下对图2所示实施例中各个步骤的具体实施方式进行详细阐述:
在步骤S210中,响应于日程的创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域。
示例性的,服务器或终端设备可以响应于日程创建操作,获取日程的创建信息,其中,日程的创建信息可以包括日程的日期、日程的开始时间和结束时间、日程的主题内容信息、日程的日历本展示样式标识等。根据获取的日程创建信息,在日历中确定该日程对应的待添加日程块的初始显示区域。
在本公开中,日程可以包括单日日程、周日程、月日程等。日程块可以作为对应的日程事件的展示载体,每个日程块可以在日历视图的对应的图形户界面中占据一定的显示区域,用于向用户展示创建的日程。
示例性的,步骤S210的具体实施方式可以是,响应于日程创建操作,获取该日程创建信息中的日程的开始时间和结束时间,确定该日程对应的待添加日程块的时间区间;根据待添加日程块的时间区间,确定待添加日程块在第一方向的显示边界;将日历视图的显示区域在第二方向的显示边界,确定为待添加日程块在第二方向的初始显示边界;根据第一方向的显示边界和第二方向的初始显示边界,确定待添加日程块的初始显示区域。
需要说明的是,在本公开示例性实施例中,确定第一方向的显示边界和第二方向的显示边界的顺序不做任何限制,可以先确定第一方向的显示边界,再确定第二方向的显示边界,也可以先确定第二方向的显示边界,在确定第一方向的显示边界。
示例性的,响应于日程创建操作,确定该日程对应的待添加日程块的时间区间后,还可以将该时间区间和已有日程块的时间区间进行比对,以确定待添加日程块对应的第一时间区间和各已有日程块对应的第二时间区间是否存在重叠部分。
在待添加日程块对应的第一时间区间和各已有日程块对应的第二时间区间都不存在重叠部分时,则可以直接根据待添加日程块的初始显示区域在日历中显示待添加日程块。例如,待添加日程块和已有日程块的时间区间不存在重叠部分时的日程块排布可以如图3所示。
在待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,则可以确定需要进行待进行显示区域调整的日程块的集合,并确定该日程块集合中的各日程块的目标显示区域。具体的,可以根据接下来的步骤S220至步骤S240进行处理。
在步骤S220中,在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息。
其中,第一预设区域包括为各日程块预先配置的日程信息展示区域。
示例性的,在获取为各日程块预先配置的第一预设区域的信息之前,可以预先为日程块配置第一预设区域和第二预设区域。其中,第一预设区域在第一方向的最大显示尺寸等于第一预设阈值,第二预设区域在第二方向的最大显示尺寸等于第二预设阈值,第一方向和第二方向垂直。其中,第一预设阈值和第二预设阈值可以根据需求进行自定义配置,还可以根据图形用户界面的显示尺寸进行自适应调整。
需要说明的是,第一预设阈值不小于展示日程事件的主题内容的字段所需的最小尺寸。在日程块的显示边界为规则形状时,可以是第一预设区域在第一方向的显示尺寸等于第一预设阈值,第二预设区域在第二方向的显示尺寸等于第二预设阈值;在日程块的显示边界为不规则图形时,可以是第一预设区域在第一方向的最大显示尺寸等于第一预设阈值,第二预设区域在第二方向的最大显示尺寸等于第二预设区域。
进一步的,在示例性的实施方式中,日程信息展示区域可以用于展示日程事件的主题信息,例如,日程块对应的日程事件的具体内容等,第二预设区域可以用于展示日程块的日历本样式,例如日程块的显示颜色等。
示例性的,第一方向可以用于标示日程的时间单位,例如,可以是年、月、日、小时、半小时、15分钟、10分钟、5分钟、1分钟等。可以根据需求对日程的时间单位进行自定义配置,本示例性实施方式对此不做特殊限制。第二方向可用于对在时间上存在重叠的日程块进行显示区域划分。
例如,参考图4,图4是根据本公开的一个示例性实施例的第一预设区域和第二预设区域在日程块中的位置示意图。在图4中,以第一方向为竖直方向,第二方向为水平方向为例,可以预先为日程块配置第一预设区域41和第二预设区域42。在图4的示例中,第一预设区域可以理解为日程块顶部的预设高度对应的区域,第二预设区域可以理解为日程块左侧的预设宽度对应的区域。其中41和42重合的左上角的区域43,既属于第一预设区域,也属于第二预设区域。
需要说明的是,在本公开示例性的实施方式中,各日程块的第一预设区域和第二预设区域所确定的显示区域可以理解为日程块中的有效区域,除了有效区域之外的其它区域可以理解为无效区域,如图4中的44。无效区域可以被其它的日程块的显示区域覆盖,即每个日程块的无效区域在显示的过程中可以和其它日程块的显示区域进行重叠。
示例性的,在步骤S120中,获取为各日程块预先配置的第一预设区域的信息,包括:获取上述的第一预设阈值。
继续参考图3,接下来,在步骤S230中,根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系。
举例而言,创建的是单日日程时,已有日程块包括和待添加日程块属于同一日期的日程块。在创建的是周日程时,已有日程块可以包括和待添加日程块属于同一周的日程块。在创建的是月日程时,已有日程块包括和待添加日程块属于同一月的日程块。
示例性的,步骤S230的具体实施方式可以是,根据第一预设阈值,确定待添加日程块的初始显示区域和已有日程块的当前显示区域之间的位置关系。参考图5,根据第一预设阈值确定待添加日程块的初始显示区域和已有日程块的当前显示区域之间的位置关系的方法可以包括步骤S510至步骤S550。其中:
在步骤S510中,获取所述第一预设阈值在日历视图的时间坐标轴中对应的第一时间差值。
在示例性的实施方式中,如前所述,第一预设阈值是第一预设区域在第一方向的显示尺寸,而第一方向可以用于标示日程的时间单位,即第一方向可以和日历视图的时间坐标轴的方向一致。当日程块显示在日历视图中时,第一预设阈值可以在第一方向对应一个时间差值,即第一时间差值。
例如,以第一方向是竖直的纵轴方向,第二方向是水平的横轴方向为例,第一预设阈值可以为20个像素,而20个像素在某个图形用户界面的日历视图的时间坐标轴中对应的时间差值是30分钟,则可以将30分钟确定为第一时间差值。如图4中,第一预设区域在第一方向的显示尺寸对应的第一预设阈值可以在日历视图的时间坐标轴中对应第一时间差值45。
需要说明的是,在日程的时间单位不同时,同一第一预设阈值对应的第一时间差值不同,在日程的时间单位相同,但图形用户界面的长宽比比例不同时,同一第一预设阈值对应的第一时间差值也会不同。
接下来,在步骤S520中,确定所述待添加日程块的第一开始时间与各所述已有日程块的第二开始时间之间的第二时间差值。
在示例性的实施方式中,第二时间差值可以包括待添加日程块对应的开始时间和已有日程块对应的开始时间之间的时间差值的绝对值。即,第二时间差值为非负数。步骤S520中的已有日程块包括和待添加日程块的时间区间存在重叠部分的已有日程块。
在步骤S530中,判断第二时间差值是否小于第一时间差值。如果是,则转至步骤S540,如果否,则转至步骤S550。
在步骤S540中,确定第二时间差值小于第一时间差值的已有日程块为第一已有日程块,并确定初始显示区域和第一已有日程块的当前显示区域之间的位置关系为第一关系。
在示例性的实施方式中,第一已有日程块包括第二时间差值小于第一时间差值的已有日程块。在第二时间差值小于第一时间差值时,表明待添加日程块和第一已有日程块的第一预设区域存在显示冲突,即,第一关系可以理解为待添加日程块和第一已有日程块为第一预设区域冲突的关系。
在步骤S550中,确定第二时间差值大于或等于第一时间差值的已有日程块为第二已有日程块,并确定所述初始显示区域和第二已有日程块的当前显示区域之间的位置关系为第二关系。
在示例性的实施方式中,第二已有日程块包括第二时间差值大于或等于第一时间差值的已有日程块。在第二时间差值大于或等于第一时间差值时,虽然待添加日程块和第二已有日程块的第一预设区域不存在显示冲突,但待添加日程块和第二已有日程块的时间区间仍然存在重叠部分,第二关系可以理解为待添加日程块和第二已有日程块为常规冲突的关系。
通过上述的步骤S510至步骤S550,可以根据第一预设阈值确定出待添加日程块和已有日程块的位置冲突关系,进而在后续的步骤中,可以根据不同的位置冲突关系确定出需要进行显示区域调整的日程块的集合,进而调整该日程块集合中的各日程块的显示区域,以充分利用日历视图的显示区域来展示各日程块,避免各日程块之间的简单均分排布或重叠挤压排布而导致的日程事件的内容字段显示不完整的情况。
接下来,在步骤S240中,根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
示例性的,图6示出本公开一示例性实施例中在位置关系为第一关系时对应的在待添加日程块和已有日程块中确定待处理的日程块集合和日程块集合中的各日程块的目标显示区域的方法的流程示意图。参考图6,该方法可以包括步骤S610至步骤S640。其中:
在步骤S610中,在所述位置关系为第一关系时,根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域。
示例性的,根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域,包括:在多个所述第一已有日程块的当前显示区域在所述第二方向上相邻时,根据所述多个第一已有日程块的当前显示区域对应的连续区域确定出所述第一待放置区域。其中,在所述第二方向相邻包括两个第一已有日程块之间不存在其它已有日程块。
具体的,可以将第一已有日程块的当前显示区域在第二方向的显示边界所确定出的显示区域确定为第一待放置区域,也可以将各第一已有日程块的当前显示区域确定为第一待放置区域。即第一待放置区域在第二方向的尺寸和第一已有日程块在第二方向的尺寸相同即可,如图7所示,在图7中,第一待放置区域可以为边界711、712、721、722所确定的封闭区域,即第一已有日程块的当前显示区域,也可以为边界721、722在日历视图中所确定的区域。
需要说明的是,在多个第一已有日程块的当前显示区域在所述第二方向上相邻时,根据多个第一已有日程块的当前显示区域对应的连续区域确定出第一待放置区域,即第一待放置区域在第二方向的尺寸和多个在第二方向相邻的第一已有日程块的当前显示区域对应的连续区域的在第二方向的最大显示尺寸相同。
举例而言,确定第一待放置区域,是为了确定和待添加日程块具有第一关系的第一已有日程块的当前显示区域所占的宽度,根据该宽度,对待添加日程块和各第一已有日程块进行重新排布,从而保证各日程块的目标显示区域中的第一预设区域和第二预设区域都不存在重叠的基础上各日程块在第二方向可以占据最宽的显示区域。但由于各日程块的时间区间不同,因此,在第一已有日程块具有多个时,多个第一已有日程块在第二方向上可能会被第二已有日程块隔开,从而可以确定出多个第一待放置区域。但在确定第一待放置区域时,对于在第二方向上相邻的多个第一已有日程块,即,存在多个第一已有日程块没有被其它日程块隔开时,可以将其对应的当前显示区域进行合并,从而将多个第一已有日程块的当前显示区域对应的连续区域确定为一个待放置区域。
如图7A所示,根据第一已有日程块71A的当前显示区域、第一已有日程块72A的当前显示区域、第一已有日程块73A的当前显示区域,可以确定出两个第一待放置区域74A和75A。图7中各已有日程块的有效区域包括第一预设区域和第二预设区域,图7中的71A、72A、73A的当前显示区域也包括有效区域和无效区域,但在图7中未对已有日程71A、72A、73A的当前显示区域进行有效区域和无效区域的区别。如图7B所示,根据第一已有日程块4的当前显示区域、第一已有日程块5的当前显示区域、第一已有日程块6的当前显示区域,可以确定出一个待放置区域。
在示例性的实施方式中,在根据第一已有日程块的当前显示区域确定第一待放置区域时,在仅有一个第一已有日程块且该第一已有日程块在第二方向的显示边界和日历视图在第二方向的显示边界不同时,或者有多个第一已有日程块,但这多个第一已有日程块在第二方向都相邻且多个第一已有日程块的当前显示区域所确定的连续区域在第二方向的显示边界和日历视图在第二方向的显示边界不同时,则根据这一个或多个第一已有日程块可以确定出2个第一待放置区域。
举例而言,以单日日程、第一方向为纵轴方向、第二方向为横轴方向为例,即在仅有一个第一已有日程块且该第一已有日程块在第二方向的尺寸(可以理解为宽度)和日历日视图在第二方向的尺寸(可以理解为宽度)不同时,或者存在多个第一已有日程块,但这多个第一已有日程块在第二方向相邻且多个第一已有日程块的当前显示区域所确定的连续区域在第二方向的最大显示尺寸(可以理解为宽度)和日历视图的显示区域在第二方向的显示尺寸(可以理解为宽度)不同时,则根据第一已有日程块可以确定出2个第一待放置区域。分别如图7C和图7D所示,在图7C中,仅有一个第一已有日程块,第一待放置区域可以为7C1和7C2,在图7D中,有2个第一已有日程块且这2个第一已有日程块在第二方向相邻,第一待放置区域可以为7D1和7D2。
接下来,在步骤S620中,根据所述一个或多个第一待放置区域,在待添加日程块和已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界。
图8示出本公开一示例性实施例中根据第一待放置区域,在待添加日程块和已有日程块中确定待处理的日程块集合和日程块集合中的各日程块在第二方向的显示边界的方法的流程示意图。参考图8,该方法可以包括步骤S810至步骤S850。
在步骤S810中,在所述一个或多个第一待放置区域中,确定出目标待放置区域。
示例性的,在第一待放置区域为一个时,确定第一待放置区域为目标待放置区域。在第一待放置区域为多个时,执行以下处理过程:针对每个第一待放置区域,根据第一待放置区域中的第一已有日程块的数量和待添加日程块的数量之和,对第一待放置区域在第二方向的最大显示尺寸进行均分,以得到待显示尺寸;在各第一待放置区域对应的待显示尺寸相同时,将在所述第二方向有且仅有一个相邻的其它的第一待放置区域的任一所述第一待放置区域确定为所述目标待放置区域;在各第一待放置区域对应的待显示尺寸不相同时,确定待显示尺寸最大的第一待放置区域为目标待放置区域。
举例而言,以创建单日日程,第一方向为纵向,第二方向为横向为例,在第一待放置区域为1个时,该第一待放置区域即为目标待放置区域。在第一待放置区域为多个时,为了保证各日程块在第二方向上具有最大的显示尺寸,可以从多个第一待放置区域中确定出目标待放置区域。具体的,可以根据各第一待放置区域中的第一已有日程块的数量和待添加日程块的数量之和对各第一待放置区域在第二方向的宽度进行均分,在各第一待放置区域均分后的宽度相同时,可以将日历视图中两侧的任意一个第一待放置区域确定为目标待放置区域,即可以将最左边或最右边的第一待放置区域确定为第一待放置区域,在各第一待放置区域均分后的宽度不同时,可以将均分后的宽度最大的第一待放置区域确定为目标待放置区域。
需要说明的是,在某个第一待放置区域不存在第一已有日程块时,如上述的图7C或图7D所示,则该第一待放置区域的待显示尺寸即为该第一待放置区域在第二方向的显示尺寸,可以只计算存在第一已有日程块的第一待放置区域的待显示尺寸,然后将其和不存在第一已有日程块的第一待放置区域在第二方向的显示尺寸进行比较,以确定出目标待放置区域。
在步骤S820中,将所述待添加日程块和所述目标待放置区域中的第一已有日程块,确定为所述待处理的日程块集合中的日程块。
示例性的,确定出目标待放置区域后,可以将待添加日程块和目标待放置区域中的第一已有日程块确定为待处理的日程块集合中的日程块。表明需要对待添加日程块的初始显示区域和目标待放置区域中的第一已有日程块的当前显示区域进行调整,以保证各日程块的第一预设区域和第二预设区域不重叠,同时可以充分利用日历视图的显示区域,提高日历视图的显示区域的利用率。
需要说明的是,在目标待放置区域中不存在第一已有日程块时,待处理的日程块集合中仅包括待添加日程块。
在步骤S830中,根据待处理的日程块集合中的日程块的数量均分目标待放置区域在第二方向的最大显示尺寸,以确定出待处理的日程块集合中各日程块的目标显示区域在第二方向的第一显示尺寸。
举例而言,由于目标待放置区域可能为不规则区域,因此,其在第二方向的显示尺寸不唯一。具体的,在目标待放置区域为多个在第二方向相邻的第一已有日程块的连续区域时,由于各第一已有日程块在第一方向的显示边界不相同,因此,目标待放置区域在第二方向的显示尺寸不唯一,此时,根据待处理的日程块集合中的数量均分的是目标待放置区域在第二方向的最大显示尺寸,例如,在第二方向为横向时,均分的是目标待放置区域在第二方向对应的最大宽度。目标待放置区域在第二方向的显示尺寸唯一时,根据待处理的日程块集合中的日程块的数量均分目标待放置区域在第二方向的显示尺寸,从而得到第一显示尺寸。
在步骤S840中,对所述待处理的日程块集合中的各日程块的开始时间和结束时间所确定的各时间差值进行降序排序,以确定出各日程块在所述第二方向的排布顺序。
示例性的,可以对待处理的日程块集合中的日程块的开始时间和结束时间所确定的时间区间按照从大到小的顺序进行排序,以确定出待处理的日程块集合中的各日程块在第二方向的排布顺序。
当然,也可以对待处理的日程块集合中的各日程块的开始时间和结束时间所确定的各时间差值进行升序排序,以确定出各日程块在第二方向的排布顺序。本示例性实施方式对此不做特殊限制。
在示例性的实施方式中,以第一方向为纵向、第二方向为横向为例,在确定出目标待放置区域后,还可以在目标待放置区域中不存在第一已有日程块时,直接将目标待放置区域在第二方向的显示边界确定为待添加日程块在第二方向的显示边界,在目标待放置区域中存在第一已有日程块时,直接将第一已有日程块在第二方向的排布顺序确定为最后(可以理解为目标待放置区域的最右边)。
举例而言,在确定出目标待放置区域且目标待放置区域中存在第一已有日程块时,可以直接将待添加日程块放置在目标待放置区域的最右边。其在第二方向的显示尺寸为第一显示尺寸、在第一方向的显示边界根据对应的时间区间确定。同时,目标待放置区域中已有的第一已有日程块在第二方向的排布顺序保持不变,在第二方向的显示尺寸调整为第一显示尺寸。
在步骤S850中,根据所述排布顺序和所述第一显示尺寸,确定出所述待处理的日程块集合中的各日程块在所述第二方向的显示边界。
示例性的,确定出排布顺序和第一显示尺寸后,可以根据排布顺序和第一显示尺寸,确定出待处理的日程块集合中的各日程块在第二方向的显示边界。具体的,各日程块在第二方向的显示尺寸为第一显示尺寸、排布顺序为步骤S840中确定的排布顺序,从而可以唯一的确定出待处理的日程块集合中的各日程块在第二方向的显示边界。
通过上述的步骤S810至步骤S850,可以在位置关系为第一关系时,确定出待处理的日程块集合和待处理的日程块集合中的各日程块在第二方向的显示边界。
接下来,继续参考图6,在步骤S630中,根据待处理的日程块集合中的各日程块的时间区间,确定出各日程块在第一方向的显示边界。
示例性的,待处理的日程块集合中的各日程块在第一方向的显示边界可以根据各日程块的开始时间和结束时间所对应的时间区间确定。
在步骤S640中,根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域。
示例性的,可以将待处理的日程块集合中的各日程块在第一方向的显示边界和第二方向的显示边界所确定的区域,确定为对应的日程块的目标显示区域。
示例性的,图9示出本公开一示例性实施例中在位置关系为第一关系时日程排布前后示意图。在图9中,以第一方向为纵轴方向、第二方向为横轴方向为例第一已有日程块4、第一已有日程块5、第一已有日程块6相邻且占据了日历视图的显示区域的最大宽度,则可以确定出一个第一待放置区域,即为目标待放置区域。在未放置新日程块(即待添加日程块1)之前,在日历视图的显示区域的宽度为1时,第一已有日程块4、第一已有日程块5、第一已有日程块6占据1/3的宽度。放置新日程块(即待添加日程块)后,新日程块和第一已有日程块4、第一已有日程块5、第一已有日程块6均分日历视图的显示区域宽度,即各占1/4的宽度,且时间区间从大到小为:新日程块和第一已有日程块4、第一已有日程块5、第一已有日程块6。
需要说明的是,对于某个待添加日程块而言,在已有日程块中仅存在第一已有日程块时,则可以直接将第一已有日程块和待添加日程块确定为待处理的日程块集合中的日程,然后根据第一已有日程块和待添加日程块的数量均分日历视图的显示区域在第二方向的显示尺寸,以确定出各第一已有日程块在第二方向的待显示尺寸(即均分后的尺寸),再根据第一已有日程块和待添加日程块的时间区间进行降序排序,以确定第一已有日程块和待添加日程块在第二方向的排布顺序,然后根据待显示尺寸和排布顺序确定出第一已有日程块和待添加日程块在第二方向的显示边界,根据各日程块的时间区间确定出其在第一方向的显示边界,进而再根据第一方向的显示边界和第二方向的显示边界确定出第一已有日程块和待添加日程块的目标显示区域。
接下来,图10示出本公开一示例性实施例中位置关系为第二关系时对应的在待添加日程块和已有日程块中确定待处理的日程块集合和日程块集合中的各日程块的目标显示区域的方法的流程图。参考图10,该方法可以包括步骤S1010至步骤S1040。其中:
在步骤S1010中,在位置关系为第二关系且存在第一目标已有日程块时,根据各第一目标已有日程块的第二预设区域在第二方向的显示边界、所述第一目标已有日程块的当前显示区域在所述第二方向的目标显示边界,在日历视图中确定出一个或多个第一待放置区域。
在示例性的实施方式中,第一目标已有日程块包括开始时间小于待添加日程块的开始时间的第二已有日程块。即,可以将第二已有日程块中开始时间小于待添加日程块的开始时间的日程块确定为第一目标已有日程块。
示例性的,以第二方向为横向、第一方向为纵向为例,在第一目标已有日程块有且仅有一个且该第一目标已有日程块的当前显示区域在第二方向的显示尺寸和日历视图的显示尺寸相同时,步骤S1010的具体实施方式可以是,可以根据第一目标已有日程块的第二预设区域在第二方向的目标显示边界、日历视图的显示区域在第二方向的目标显示边界、以及第一目标已有日程块的第一预设区域在第一方向的目标显示边界,确定出第一待放置区域,参考图11A的第一待放置区域11A1所示。也可以将第一目标已有日程块的第二预设区域在第二方向的目标显示边界、日历视图的显示区域的目标显示边界所确定的显示区域作为第一待放置区域。
其中,目标显示边界为对应的区域在对应的方向上位置靠后的显示边界。即,目标显示边界为某个区域在目标方向位置靠后的显示边界,例如,第一方向为纵轴、第二方向为横轴时,某个区域在第一方向的目标显示边界为该区域在第一方向的两个显示边界中下方的显示边界,某个区域在第二方向的目标显示边界为该区域在第二方向的两个显示边界中右边的显示边界。
示例性的,以第二方向为横向、第一方向为纵向为例,在第一目标已有日程块有多个时,步骤S1010的具体实施方式可以是,针对每个第一目标已有日程块,根据第一目标已有日程块的当前显示区域中的第一预设区域在第一方向的目标显示边界、第二预设区域在第二方向的目标显示边界、以及第一目标已有日程块的当前显示区域在第二方向的目标显示边界,确定出一个第一待放置区域。由于第一目标已有日程块有多个,因此,可以确定出多个第一待放置区域,如图11B所示。
需要说的是,在多个第一目标已有日程块所确定出的第一待放置区域存在公共区域时,该公共区域为第一待放置区域,从而根据多个第一目标已有日程块确定出一个待放置区域。如图11C所示,有效区域2和有效区域3对应的第一目标已有日程块12和13所确定的第一待放置区域存在公共区域112,因此,根据第一目标已有日程块12和13确定的第一待放置区域为112。换言之,在第一目标已有日程块具有多个时,针对每个无效区域中不存在其它的第一目标已有日程块的第一目标已有日程块,根据该第一目标已有日程块的第一预设区域在第一方向的目标显示边界、第二预设区域在第二方向的目标显示边界、以及第一目标已有日程块的当前显示区域在第二方向的目标显示边界,确定出一个第一待放置区域。
在步骤S1020中,根据所述一个或多个第一待放置区域,在待添加日程块和已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界。
示例性的,步骤S1020的具体实施方式和上述的步骤S620的具体实施方式完全相同,已经在前述的图8中进行了详细说明,此处不再进行赘述。
在步骤S1030中,根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界。
示例性的,待处理的日程块集合中的各日程块在第一方向的显示边界可以根据各日程块的开始时间和结束时间所对应的时间区间确定。
在步骤S1040中,根据所述第一方向的显示边界和所述第二方向的显示边界,确定出待处理的日程块集合中的各日程块的目标显示区域。
示例性的,可以将待处理的日程块集合中的各日程块在第一方向的显示边界和第二方向的显示边界所确定的区域,确定为待处理的日程块集合中对应的日程块的目标显示区域。
图11C示出本公开一示例性实施例中在位置关系为第二关系时的日程排布前后示意图。在图11C中,已经存在了13个已有日程块,根据有效区域1和有效区域2对应的第一目标已有日程块(图中的11和12、13)可以确定出2个第一待放置区域111和112。其中,在添加新日程块(待添加日程块)之前,111中存在1个第一已有日程块、112中存在3个第一已有日程块。经过计算,当待添日程块添加到112时,新日程块的目标显示区域在第二方向的显示尺寸相比于添加到111时大,所以将新日程块添加至第一待放置区域112中,如图11C所示。
示例性的,若对于某个待添加日程块而言,在已有日程块中仅存在第一目标已有日程块时,可以直接将待添加日程块确定为待处理的日程块集合中的日程块,根据步骤S1010中确定出的一个或多个第一待放置区域的尺寸,确定出目标待放置区域,然后将目标待放置区域在第二方向的显示边界确定为待添加日程块在第二方向的显示边界。具体的,只有一个第一待放置区域时,该第一待放置区域即为目标待放置区域。有多个第一待放置区域且多个第一待放置区域在第二方向的尺寸相同时,可以将任一侧边的第一待放置区域确定为目标待放置区域,以第二方向为横轴为例,可以将最左边或最右边的第一待放置区域确定为目标待放置区域;有多个第一待放置区域且多个第一待放置区域在第二方向的尺寸不同时,可以将在第二方向尺寸最大的待放置区域确定为目标待放置区域。
在已有日程块中同时存在第一已有日程块和第一目标已有日程块时,可以根据图6或图10中的任一种方法确定出待处理的日程块集合和待处理的日程块集合中的日程块的目标显示区域。也可以使用图6和图10的方法同时确定待处理的日程块集合和日程块集合中的各日程块的目标显示区域,这两种方法确定出的结果是相同的。
示例性的,图12示出本公开一示例性实施例中在存在第二目标已有日程块时,在待添加日程块和已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域的方法的流程示意图。参考图12,该方法可以包括步骤S1210至步骤S1260。其中:
在步骤S1210中,在所述位置关系为第二关系且存在第二目标已有日程块时,确定所述第二目标已有日程块为所述待处理的日程块集合中的日程块。
在示例性的实施方式中,第二目标已有日程块包括开始时间大于所述待添加日程块的开始时间的第二已有日程块。即,可以将第二已有日程块中开始时间大于待添加日程块的开始时间的日程块确定为第二目标已有日程块。
举例而言,在已有日程块中存在第二目标已有日程块时,可以将第二目标已有日程块确定为待处理的日程块集合中的日程块。
在步骤S1220中,根据待添加日程块的目标显示区域中的第一预设区域在第一方向的目标显示边界、第二预设区域在第二方向的目标显示边界、以及目标显示区域在第二方向的目标显示边界,确定出第二待放置区域;
在示例性的实施方式中,目标显示边界为对应的区域在对应的方向上位置靠后的显示边界。其中,位置靠后可以理解为,当某个区域在某个方向的两个显示边界为上下关系时,位置靠后的边界为下面的边界,当某个区域在某个方向的两个显示边界的关系为左右关系时,靠后的显示边界为右边的显示边界。
以第一方向为纵轴、第二方向为横轴为例,待添加日程块中的第一预设区域在所述第一方向的目标显示边界可以为第一预设区域在第一方向的两个显示边界中下方的显示边界,添加日程块的目标显示区域中的所述第二预设区域在所述第二方向的目标显示边界可以为第二预设区域在第二方向的两个显示边界中右方的显示边界,待添加日程块的目标显示区域在所述第二方向的目标显示边界可以为目标显示区域在第二方向的两个显示边界中右方的显示边界。
其中,待添加日程块的目标显示区域可以包括根据上述的图6或图10所确定出的待添加日程块的目标显示区域。在已有日程块中仅包括第二目标已有日程块时,待添加日程块的目标显示区域为待添加日程块的初始显示区域。
示例性的,可以将待添加日程块的目标显示区域中的所述第一预设区域在所述第一方向的目标显示边界、所述第二预设区域在所述第二方向的目标显示边界、以及所述目标显示区域在所述第二方向的目标显示边界所确定的区域确定为第二待放置区域。
确定出第二待放置区域后,在步骤S1230中,根据所述第二目标已有日程块的数量对所述第二待放置区域在所述第二方向的显示尺寸进行均分,以得到各所述第二目标已有日程块的目标显示区域在所述第二方向的第二显示尺寸。
在步骤S1240中,根据各第二目标已有日程块在第二方向的原始排布顺序和第二显示尺寸,确定出各第二目标已有日程块的目标显示区域在第二方向的显示边界。
示例性的,各第二目标已有日程块在第二方向的原始排布顺序即为在未添加待添加日程块之前各第二目标已有日程块在日历视图中的原来的排布顺序。根据原始排布顺序和第二显示尺寸,可以确定各第二目标已有日程块的目标显示区域在第二方向的显示边界。
需要说明的是,在仅有一个第二目标已有日程块时,第二待放置区域在第二方向的显示边界即为第二目标已有日程块的目标显示区域在第二方向的显示边界。
在步骤S1250中,根据各第二目标已有日程块的时间区间,确定出各第二目标已有日程块的目标显示区域在第一方向的显示边界。
在步骤S1260中,根据第一方向的显示边界和第二方向的显示边界,确定出各第二目标已有日程块的目标显示区域。
图13示出本公开一示例性实施例中对第二目标已有日程块进行重新排布前后的示意图。在图13中,对新日程(即待添加日程块)而言,各已有日程块中仅存在第二目标已有日程块且第二目标已有日程块有3个,此时,待添加日程块的初始显示区域为其目标显示区域。
示例性的,若对于某个待添加日程块而言,在已有日程块中仅存在第二目标已有日程块时,可以根据图12所示的方法确定出待处理的日程块集合和待处理的日程块集合中的日程块的目标显示区域。在已有日程块中存在第二目标已有日程块的同时存在第一已有日程块和/或第一目标已有日程块时,可以先根据图6和/或图10所示的方法确定出待添加日程块的目标显示区域,然后再根据图12所示的方法确定出第二目标已有日程块的目标显示区域。
示例性的,确定日程块集合中的各日程块的目标显示区域后,可以根据各日程块的目标显示区域在日历中显示各日程块。
在本公开示例性的实施方式中,通过为各日程块配置第一预设区域和第二预设区域,可以保证存在时间冲突的各日程块在日历视图中进行不重叠展示,避免存在冲突。同时,通过不同的位置关系,确定出需要进行调整的日程块并对其进行显示区域调整,可以充分利用日历视图的显示区域,保证各日程块在日历视图的第二方向具有最大的显示尺寸,从而提高日历视图的显示区域的利用率。
本领域技术人员可以理解实现上述实施方式的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本发明提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本发明示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
图14示出本公开示例性实施例中日历中的日程显示装置的结构示意图。参考图14,装置1400包括:初始显示区域确定模块1410、预设区域信息获取模块1420、位置关系确定模块1430、目标显示区域确定模块1450。其中:
初始显示区域确定模块1410,被配置为响应于日程的创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域;
预设区域信息获取模块1420,被配置为在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取为第一预设区域的信息,其中,第一预设区域包括为各日程块预先配置的日程信息展示区域;
位置关系确定模块1430,被配置为根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系;
目标显示区域确定模块1450,被配置为根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
在本公开的一种示例性实施方式中,基于前述实施例,所述装置1400还包括预设区域配置模块,该模块被配置为:
为日程块预先配置第一预设区域和第二预设区域,其中,所述第一预设区域在第一方向的最大显示尺寸等于第一预设阈值,所述第二预设区域在第二方向的最大显示尺寸等于第二预设阈值,所述第二方向与所述第一方向垂直。
在本公开的一种示例性实施方式中,基于前述实施例,所述预设区域信息获取模块1420还被具体配置为:
在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取所述第一预设阈值;
在本公开的一种示例性实施方式中,基于前述实施例,所述位置关系确定模块1430还被具体配置为:
根据所述第一预设阈值,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系。
在本公开的一种示例性实施方式中,基于前述实施例,所述位置关系确定模块1430通过以下方式根据所述第一预设阈值,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系:
获取所述第一预设阈值在日历视图的时间坐标轴中对应的第一时间差值;
确定所述待添加日程块的第一开始时间与所述已有日程块的第二开始时间之间的第二时间差值;
确定所述第二时间差值小于所述第一时间差值的已有日程块为第一已有日程块,并确定所述初始显示区域和所述第一已有日程块的当前显示区域之间的位置关系为第一关系;
确定所述第二时间差值大于或等于所述第一时间差值的已有日程块为第二已有日程块,并确定所述初始显示区域和所述第二已有日程块的当前显示区域之间的位置关系为第二关系。
在本公开的一种示例性实施方式中,基于前述实施例,所述目标显示区域确定模块1440,通过以下方式在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域:
在所述位置关系为第一关系时,根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域;
根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界;
根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域。
在本公开的一种示例性实施方式中,基于前述实施例,所述根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域,包括:
在多个所述第一已有日程块的当前显示区域在所述第二方向上相邻时,根据所述多个第一已有日程块的当前显示区域对应的连续区域确定出所述第一待放置区域。
在本公开的一种示例性实施方式中,基于前述实施例,所述目标显示区域确定模块1440还可以通过以下方式,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域:
在所述位置关系为第二关系且存在第一目标已有日程块时,根据各所述第一目标已有日程块的所述第二预设区域在所述第二方向的目标显示边界、所述第一目标已有日程块的当前显示区域在所述第二方向的目标显示边界,,在日历视图中确定出一个或多个第一待放置区域;
根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界;
根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域;
其中,所述第一目标已有日程块包括开始时间小于所述待添加日程块的开始时间的第二已有日程块。
在本公开的一种示例性实施方式中,基于前述实施例,根据所述一个或多个第一待放置区域,确定出所述待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界,包括:
在所述一个或多个第一待放置区域中,确定出目标待放置区域;
将所述待添加日程块和所述目标待放置区域中的第一已有日程块,确定为所述待处理的日程块集合中的日程块;
根据所述待处理的日程块集合中的日程块的数量均分所述目标待放置区域在所述第二方向的最大显示尺寸,以确定出所述待处理的日程块集合中各日程块的目标显示区域在所述第二方向的第一显示尺寸;
对所述待处理的日程块集合中的各日程块的开始时间和结束时间所确定的各时间差值进行降序排序,以确定出各日程块在所述第二方向的排布顺序;
根据所述排布顺序和所述第一显示尺寸,确定出所述待处理的日程块集合中的各日程块在所述第二方向的显示边界。
在本公开的一种示例性实施方式中,基于前述实施例,所述在所述一个或多个第一待放置区域中,确定出目标待放置区域,包括:
在所述第一待放置区域为一个时,确定所述第一待放置区域为所述目标待放置区域;
在所述第一待放置区域为多个时,执行以下处理过程:
针对每个所述第一待放置区域,根据所述第一待放置区域中的第一已有日程块的数量和所述待添加日程块的数量之和,对所述第一待放置区域在所述第二方向的最大显示尺寸进行均分,以得到待显示尺寸;
在各所述第一待放置区域对应的待显示尺寸相同时,将在所述第二方向有且仅有一个相邻的其它的第一待放置区域的任一第一待放置区域确定为所述目标待放置区域;
在各所述第一待放置区域对应的待显示尺寸不相同时,确定所述待显示尺寸最大的所述第一待放置区域为所述目标待放置区域。
在本公开的一种示例性实施方式中,基于前述实施例,所述目标显示区域确定模块还可以通过以下方式,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域:
在所述位置关系为第二关系且存在第二目标已有日程块时,确定所述第二目标已有日程块为所述待处理的日程块集合中的日程块;
根据所述待添加日程块的目标显示区域中的所述第一预设区域在所述第一方向的目标显示边界、所述第二预设区域在所述第二方向的目标显示边界、以及所述目标显示区域在所述第二方向的目标显示边界,确定出第二待放置区域;
根据所述第二目标已有日程块的数量对所述第二待放置区域在所述第二方向的显示尺寸进行均分,以得到各所述第二目标已有日程块的目标显示区域在所述第二方向的第二显示尺寸;
根据各所述第二目标已有日程块在所述第二方向的原始排布顺序和所述第二显示尺寸,确定出各所述第二目标已有日程块的目标显示区域在所述第二方向的显示边界;
根据各所述第二目标已有日程块的时间区间,确定出各所述第二目标已有日程块的目标显示区域在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出各所述第二目标已有日程块的目标显示区域;
其中,所述目标显示边界为对应的区域在对应的方向上位置靠后的显示边界,所述第二目标已有日程块包括开始时间大于所述待添加日程块的开始时间的第二已有日程块,在所述已有日程块中仅包括所述第二目标已有日程块时,所述待添加日程块的目标显示区域为所述待添加日程块的初始显示区域。
在本公开的一种示例性实施方式中,基于前述实施例,所述日程信息展示区域用于展示日程事件的主题信息,所述第二预设区域用于展示所述日程块的日历本样式。
在本公开的一种示例性实施方式中,基于前述实施例,所述装置1400还包括待添加日程块显示模块,被配置为:
在所述待添加日程块对应的第一时间区间和各已有日程块对应的第二时间区间均不重叠时,根据所述待添加日程块的初始显示区域在所述日历中显示所述待添加日程块;
其中,所述待添加日程块的初始显示区域通过以下方式确定:
根据所述待添加日程块的时间区间,确定所述待添加日程块在第一方向的显示边界;
将日历视图的显示区域在第二方向的显示边界,确定为所述待添加日程块在第二方向的初始显示边界;
根据所述第一方向的显示边界和所述第二方向的初始显示边界,确定所述待添加日程块的初始显示区域。
上述日历中的日程显示装置中各单元的具体细节已经在对应的日历中的日程显示方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
在本公开示例性实施方式中,还提供了一种能够实现上述方法的计算机存储介质。其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
本公开的实施方式,还提供可一种用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图15来描述根据本公开的这种实施方式的电子设备1500。图15显示的电子设备1500仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图15所示,电子设备1500以通用计算设备的形式表现。电子设备1500的组件可以包括但不限于:上述至少一个处理单元1510、上述至少一个存储单元1520、连接不同系统组件(包括存储单元1520和处理单元1510)的总线1530以及显示单元1540。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1510执行,使得所述处理单元1510执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元1510可以执行如图2中所示的方法。
存储单元1520可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)15201和/或高速缓存存储单元15202,还可以进一步包括只读存储单元(ROM)15203。
存储单元1520还可以包括具有一组(至少一个)程序模块15205的程序/实用工具15204,这样的程序模块15205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1530可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备1500也可以与一个或多个外部设备1600(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1500交互的设备通信,和/或与使得该电子设备1500能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1550进行。并且,电子设备1500还可以通过网络适配器1560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1560通过总线1530与电子设备1500的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (15)
1.一种日历中的日程显示方法,其特征在于,包括:
响应于日程的创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域;
在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息,其中,所述第一预设区域包括为各日程块预先配置的日程信息展示区域;
根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系;
根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
2.根据权利要求1所述的日历中的日程显示方法,其特征在于,所述方法还包括:
为日程块预先配置第一预设区域和第二预设区域,其中,所述第一预设区域在第一方向的最大显示尺寸等于第一预设阈值,所述第二预设区域在第二方向的最大显示尺寸等于第二预设阈值,所述第二方向与所述第一方向垂直。
3.根据权利要求2所述的日历中的日程显示方法,其特征在于,所述获取第一预设区域的信息,包括:
获取所述第一预设阈值;
所述根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系,包括:
根据所述第一预设阈值,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系。
4.根据权利要求3所述的日历中的日程显示方法,其特征在于,所述根据所述第一预设阈值,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系,包括:
获取所述第一预设阈值在日历视图的时间坐标轴中对应的第一时间差值;
确定所述待添加日程块的第一开始时间与所述已有日程块的第二开始时间之间的第二时间差值;
确定所述第二时间差值小于所述第一时间差值的已有日程块为第一已有日程块,并确定所述初始显示区域和所述第一已有日程块的当前显示区域之间的位置关系为第一关系;
确定所述第二时间差值大于或等于所述第一时间差值的已有日程块为第二已有日程块,并确定所述初始显示区域和所述第二已有日程块的当前显示区域之间的位置关系为第二关系。
5.根据权利要求4所述的日历中的日程显示方法,其特征在于,所述根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,包括:
在所述位置关系为第一关系时,根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域;
根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界;
根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域。
6.根据权利要求5所述的日历中的日程显示方法,其特征在于,所述根据各第一已有日程块的当前显示区域确定出一个或多个第一待放置区域,包括:
在多个所述第一已有日程块的当前显示区域在所述第二方向上相邻时,根据所述多个第一已有日程块的当前显示区域对应的连续区域确定出所述第一待放置区域。
7.根据权利要求4所述的日历中的日程显示方法,其特征在于,所述根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,包括:
在所述位置关系为第二关系且存在第一目标已有日程块时,根据各所述第一目标已有日程块的所述第二预设区域在所述第二方向的目标显示边界、所述第一目标已有日程块的当前显示区域在所述第二方向的目标显示边界在日历视图中确定出一个或多个第一待放置区域;
根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界;
根据所述待处理的日程块集合中的各日程块的时间区间,确定出各日程块在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出所述待处理的日程块集合中的各日程块的目标显示区域;
其中,所述第一目标已有日程块包括开始时间小于所述待添加日程块的开始时间的第二已有日程块,所述目标显示边界为对应的区域在对应的方向上位置靠后的显示边界。
8.根据权利要求5至7中任一项所述的日历中的日程显示方法,其特征在于,根据所述一个或多个第一待放置区域,在所述待添加日程块和所述已有日程块中确定出所述待处理的日程块集合和所述日程块集合中的各日程块在所述第二方向的显示边界,包括:
在所述一个或多个第一待放置区域中,确定出目标待放置区域;
将所述待添加日程块和所述目标待放置区域中的第一已有日程块,确定为所述待处理的日程块集合中的日程块;
根据所述待处理的日程块集合中的日程块的数量均分所述目标待放置区域在所述第二方向的最大显示尺寸,以确定出所述待处理的日程块集合中各日程块的目标显示区域在所述第二方向的第一显示尺寸;
对所述待处理的日程块集合中的各日程块的开始时间和结束时间所确定的各时间差值进行降序排序,以确定出各日程块在所述第二方向的排布顺序;
根据所述排布顺序和所述第一显示尺寸,确定出所述待处理的日程块集合中的各日程块在所述第二方向的显示边界。
9.根据权利要求8所述的日历中的日程显示方法,其特征在于,所述在所述一个或多个第一待放置区域中,确定出目标待放置区域,包括:
在所述第一待放置区域为一个时,确定所述第一待放置区域为所述目标待放置区域;
在所述第一待放置区域为多个时,执行以下处理过程:
针对每个所述第一待放置区域,根据所述第一待放置区域中的第一已有日程块的数量和所述待添加日程块的数量之和,对所述第一待放置区域在所述第二方向的最大显示尺寸进行均分,以得到待显示尺寸;
在各所述第一待放置区域对应的待显示尺寸相同时,将在所述第二方向有且仅有一个相邻的其它的第一待放置区域的任一第一待放置区域确定为所述目标待放置区域;
在各所述第一待放置区域对应的待显示尺寸不相同时,确定所述待显示尺寸最大的所述第一待放置区域为所述目标待放置区域。
10.根据权利要求4至7中任一项所述的日历中的日程显示方法,其特征在于,所述根据所述位置关系,在所述添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,包括:
在所述位置关系为第二关系且存在第二目标已有日程块时,确定所述第二目标已有日程块为所述待处理的日程块集合中的日程块;
根据所述待添加日程块的目标显示区域中的所述第一预设区域在所述第一方向的目标显示边界、所述第二预设区域在所述第二方向的目标显示边界、以及所述目标显示区域在所述第二方向的目标显示边界,确定出第二待放置区域;
根据所述第二目标已有日程块的数量对所述第二待放置区域在所述第二方向的显示尺寸进行均分,以得到各所述第二目标已有日程块的目标显示区域在所述第二方向的第二显示尺寸;
根据各所述第二目标已有日程块在所述第二方向的原始排布顺序和所述第二显示尺寸,确定出各所述第二目标已有日程块的目标显示区域在所述第二方向的显示边界;
根据各所述第二目标已有日程块的时间区间,确定出各所述第二目标已有日程块的目标显示区域在所述第一方向的显示边界;
根据所述第一方向的显示边界和所述第二方向的显示边界,确定出各所述第二目标已有日程块的目标显示区域;
其中,所述目标显示边界为对应的区域在对应的方向上位置靠后的显示边界,所述第二目标已有日程块包括开始时间大于所述待添加日程块的开始时间的第二已有日程块,在所述已有日程块中仅包括所述第二目标已有日程块时,所述待添加日程块的目标显示区域为所述待添加日程块的初始显示区域。
11.根据权利要求2所述的日历中的日程显示方法,其特征在于,所述日程信息展示区域用于展示日程事件的主题信息,所述第二预设区域用于展示所述日程块的日历本样式。
12.根据权利要求1所述的日历中的日程显示方法,其特征在于,所述方法还包括:
在所述待添加日程块对应的第一时间区间和各已有日程块对应的第二时间区间均不重叠时,根据所述待添加日程块的初始显示区域在所述日历中显示所述待添加日程块;
其中,所述待添加日程块的初始显示区域通过以下方式确定:
根据所述待添加日程块的时间区间,确定所述待添加日程块在第一方向的显示边界;
将日历视图的显示区域在第二方向的显示边界,确定为所述待添加日程块在第二方向的初始显示边界;
根据所述第一方向的显示边界和所述第二方向的初始显示边界,确定所述待添加日程块的初始显示区域。
13.一种日历中的日程显示装置,其特征在于,包括:
初始显示区域确定模块,被配置为响应于日程创建操作,在日历中确定所述日程对应的待添加日程块的初始显示区域;
预设区域信息获取模块,被配置为在所述待添加日程块对应的第一时间区间和已有日程块对应的第二时间区间存在重叠部分时,获取第一预设区域的信息,其中,所述第一预设区域包括为各日程块预先配置的日程信息展示区域;
位置关系确定模块,被配置为根据所述第一预设区域的信息,确定所述初始显示区域和所述已有日程块的当前显示区域之间的位置关系;
目标显示区域确定模块,被配置为根据所述位置关系,在所述待添加日程块和所述已有日程块中确定出待处理的日程块集合和所述日程块集合中的各日程块的目标显示区域,并显示所述日程块集合中的日程块。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至12中任一项所述的日历中的日程显示方法。
15.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至12中任一项所述的日历中的日程显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110286838.1A CN112860154B (zh) | 2021-03-17 | 2021-03-17 | 日历中的日程显示方法及装置、可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110286838.1A CN112860154B (zh) | 2021-03-17 | 2021-03-17 | 日历中的日程显示方法及装置、可读存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112860154A true CN112860154A (zh) | 2021-05-28 |
CN112860154B CN112860154B (zh) | 2022-06-14 |
Family
ID=75995047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110286838.1A Active CN112860154B (zh) | 2021-03-17 | 2021-03-17 | 日历中的日程显示方法及装置、可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860154B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1073287A (zh) * | 1991-11-15 | 1993-06-16 | 国际商业机器公司 | 直观日程表 |
US20090119715A1 (en) * | 2007-11-01 | 2009-05-07 | Microsoft Corporation | Alternate source conflict resolution |
CN108920244A (zh) * | 2018-06-29 | 2018-11-30 | 天津字节跳动科技有限公司 | 一种日历视图的日程显示方法和装置 |
CN110428225A (zh) * | 2014-05-30 | 2019-11-08 | 苹果公司 | 智能约会建议 |
-
2021
- 2021-03-17 CN CN202110286838.1A patent/CN112860154B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1073287A (zh) * | 1991-11-15 | 1993-06-16 | 国际商业机器公司 | 直观日程表 |
US20090119715A1 (en) * | 2007-11-01 | 2009-05-07 | Microsoft Corporation | Alternate source conflict resolution |
CN110428225A (zh) * | 2014-05-30 | 2019-11-08 | 苹果公司 | 智能约会建议 |
CN108920244A (zh) * | 2018-06-29 | 2018-11-30 | 天津字节跳动科技有限公司 | 一种日历视图的日程显示方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112860154B (zh) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109032796B (zh) | 一种数据处理方法和装置 | |
CN109840142A (zh) | 基于云监控的线程控制方法、装置、电子设备及存储介质 | |
CN111045675B (zh) | 一种基于Flutter的页面生成方法、装置、设备和存储介质 | |
EP4130994A1 (en) | Remote assistance method and apparatus, and storage medium and terminal | |
CN111026493B (zh) | 界面渲染的处理方法和装置 | |
CN112214155A (zh) | 一种视图信息播放方法、装置、设备和存储介质 | |
CN112711731A (zh) | 数据埋点方法、装置、设备及存储介质 | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
CN112860154B (zh) | 日历中的日程显示方法及装置、可读存储介质及电子设备 | |
CN111736825B (zh) | 一种信息展示方法、装置、设备和存储介质 | |
CN114356475B (zh) | 一种显示处理方法、装置、设备及存储介质 | |
CN110764864A (zh) | 一种基于Terraform的可视化资源编排方法 | |
CN116302271A (zh) | 一种页面展示方法、装置及电子设备 | |
CN116051031A (zh) | 项目调度系统、介质及电子设备 | |
CN107341017B (zh) | Ui设计方法、装置、设备及存储介质 | |
CN114186526A (zh) | 一种基于r树mbr算法的集成电路自动打孔方法及装置 | |
CN112527422B (zh) | 视图更新方法、装置、设备及存储介质 | |
CN114115681B (zh) | 页面生成方法及装置、电子设备和介质 | |
CN112241297B (zh) | 数据展示方法、系统、计算机设备及可读存储介质 | |
CN116610880B (zh) | 数据可视化的实现方法、装置、电子设备和存储介质 | |
CN111680867B (zh) | 一种资源配给的方法、装置和电子设备 | |
CN110109729B (zh) | 一种界面的布局调整方法、装置、电子设备及存储介质 | |
CN115857743A (zh) | 一种组件展示方法、装置、设备和存储介质 | |
CN115292629A (zh) | 图像生成方法及装置、存储介质及电子设备 | |
CN117633384A (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 |