聊天列表的显示方法及装置转让专利

申请号 : CN201510613200.9

文献号 : CN105607816B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 蒋浩

申请人 : 宇龙计算机通信科技(深圳)有限公司

摘要 :

本发明提供了一种聊天列表的显示方法及装置,其中,所述聊天列表的显示方法包括:分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度;根据选择面板的高度调整支撑控件的高度。通过本发明的技术方案,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,同时不会造成背景显示控件被压缩,而避免聊天背景图片被压缩失真。

权利要求 :

1.一种聊天列表的显示方法,其特征在于,包括:

分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在所述聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;

当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度;

根据所述选择面板的高度调整所述支撑控件的高度;

其中,所述当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度的步骤具体包括:获取终端的屏幕高度及状态栏高度;

计算导航栏高度及所述悬浮窗的高度;

根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。

2.根据权利要求1所述的聊天列表的显示方法,其特征在于,所述计算导航栏高度的步骤包括:获取聊天窗口高度;

根据所述聊天窗口高度及所述终端的屏幕高度计算导航栏高度。

3.根据权利要求1所述的聊天列表的显示方法,其特征在于,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度的步骤具体包括:当所述导航栏高度等于零时,根据所述终端的屏幕高度、所述状态栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度;

当所述导航栏高度不等于零时,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。

4.根据权利要求1至3中任一项所述的聊天列表的显示方法,其特征在于,还包括:在根据所述选择面板的高度调整所述支撑控件的高度的同时,控制所述背景显示控件的高度不变,以使通过所述背景显示控件显示的聊天背景图片不被压缩。

5.一种聊天列表的显示装置,其特征在于,包括:

设置单元,用于分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在所述聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;

确定单元,用于当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度;

调整单元,用于根据所述选择面板的高度调整所述支撑控件的高度;

其中,所述确定单元包括:

获取单元,用于获取终端的屏幕高度及状态栏高度;

计算单元,用于计算导航栏高度及所述悬浮窗的高度;

所述确定单元具体用于:根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。

6.根据权利要求5所述的聊天列表的显示装置,其特征在于,还包括:所述获取单元还用于:获取聊天窗口高度;

所述计算单元具体用于:根据所述聊天窗口高度及所述终端的屏幕高度计算导航栏高度。

7.根据权利要求5所述的聊天列表的显示装置,其特征在于,所述确定单元具体用于:当所述导航栏高度等于零时,根据所述终端的屏幕高度、所述状态栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度;

当所述导航栏高度不等于零时,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。

8.根据权利要求5至7中任一项所述的聊天列表的显示装置,其特征在于,还包括:所述调整单元还用于:在根据所述选择面板的高度调整所述支撑控件的高度的同时,控制所述背景显示控件的高度不变,以使通过所述背景显示控件显示的聊天背景图片不被压缩。

说明书 :

聊天列表的显示方法及装置

技术领域

[0001] 本发明涉及终端技术领域,具体而言,涉及一种聊天列表的显示方法、一种聊天列表的显示装置。

背景技术

[0002] 用户通过聊天窗口聊天的过程中,在点击用于编辑聊天信息的悬浮窗后,会动态的拉起或关闭输入法或表情等功能的选择面板来选择待编辑的聊天信息,当聊天列表显示区域和选择面板显示区域属于同一窗口时,选择面板的拉起可能会造成聊天背景图片被压缩失真,而当聊天列表显示区域和选择面板显示区域不属于同一窗口时,会导致聊天列表中的部分聊天信息被选择面板遮挡,使得用户在拉起选择面板后若想查看被选择面板遮挡的聊天信息时,还需再次关闭选择面板来进行查看,操作繁琐,从而影响用户的使用体验。
[0003] 因此,如何能够使得当选择面板被拉起时,聊天列表中的部分信息不被选择面板遮挡,同时避免聊天背景图片被压缩失真成为亟待解决的技术问题。

发明内容

[0004] 本发明正是基于上述技术问题至少之一,提出了一种新的聊天列表的显示方案,通过将用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件分离,并在聊天列表控件的下方设置支撑控件,以将支撑控件的高度动态设置为选择面板的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,同时不会造成背景显示控件被压缩,而避免聊天背景图片被压缩失真。
[0005] 有鉴于此,本发明提出了一种聊天列表的显示方法,包括:分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在所述聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度;根据所述选择面板的高度调整所述支撑控件的高度。
[0006] 在该技术方案中,通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,同时在聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件,并根据选择面板的高度调整支撑控件的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,便于用户操作,避免了相关技术中因聊天列表中的部分聊天信息被选择面板遮挡而导致操作繁琐及影响用户使用体验的问题;同时通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,使得位于聊天列表控件下方的支撑控件的高度的改变,在压缩聊天列表控件的同时,不会造成背景显示控件被压缩,从而避免了聊天背景图片被压缩失真。
[0007] 在上述技术方案中,优选地,所述当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度的步骤具体包括:获取终端的屏幕高度及状态栏高度;计算导航栏高度及所述悬浮窗的高度;根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0008] 在该技术方案中,通过获取终端的屏幕高度及状态栏高度,计算导航栏高度及悬浮窗的高度,以根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,为后续根据选择面板的高度动态的调整支撑控件的高度提供必要的前提保障。
[0009] 在上述任一项技术方案中,优选地,所述计算导航栏高度的步骤包括:获取聊天窗口高度;根据所述聊天窗口高度及所述终端的屏幕高度计算导航栏高度。
[0010] 在该技术方案中,通过获取聊天窗口高度,以根所述聊天窗口高度及终端的屏幕高度计算导航栏高度,确保了在动态变化的界面中正确的确定出选择面板的高度。此外,通过对导航栏高度的计算,使得能够在使用实体按键或虚拟按键的终端上都能够正常的适配显示。
[0011] 具体地,当检测到聊天窗口高度大于终端的屏幕高度时,通过公式导航栏高度=聊天窗口高度-终端的屏幕高度来计算获得。
[0012] 在上述任一项技术方案中,优选地,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度的步骤具体包括:当所述导航栏高度等于零时,根据所述终端的屏幕高度、所述状态栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度;当所述导航栏高度不等于零时,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0013] 在该技术方案中,通过在导航栏高度等于零时,根据终端的屏幕高度、状态栏高度、悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度;以及通过在导航栏高度不等于零时,根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,使得无论终端界面上是否显示导航栏,均能够在动态变化的界面中正确的确定出选择面板的高度。
[0014] 具体地,在导航栏高度等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度,来计算选择面板的高度;在导航栏高度不等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度+导航栏高度,来计算。此外,当选择面板不被拉起时,选择面板的高度默认为悬浮窗高度。
[0015] 在上述任一项技术方案中,优选地,还包括:在根据所述选择面板的高度调整所述支撑控件的高度的同时,控制所述背景显示控件的高度不变,以使通过所述背景显示控件显示的聊天背景图片不被压缩。
[0016] 在该技术方案中,通过在根据选择面板的高度调整支撑控件的高度的同时,控制背景显示控件的高度不变,确保了聊天背景图片不被压缩失真。
[0017] 根据本发明的第二方面,还提出了一种聊天列表的显示装置,包括:设置单元,用于分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在所述聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;确定单元,用于当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度;调整单元,用于根据所述选择面板的高度调整所述支撑控件的高度。
[0018] 在该技术方案中,通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,同时在聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件,并根据选择面板的高度调整支撑控件的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,便于用户操作,避免了相关技术中因聊天列表中的部分聊天信息被选择面板遮挡而导致操作繁琐及影响用户使用体验的问题;同时通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,使得位于聊天列表控件下方的支撑控件的高度的改变,在压缩聊天列表控件的同时,不会造成背景显示控件被压缩,从而避免了聊天背景图片被压缩失真。
[0019] 在上述技术方案中,优选地,所述确定单元包括:获取单元,用于获取终端的屏幕高度及状态栏高度;计算单元,用于计算导航栏高度及所述悬浮窗的高度;所述确定单元具体用于:根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0020] 在该技术方案中,通过获取终端的屏幕高度及状态栏高度,计算导航栏高度及悬浮窗的高度,以根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,为后续根据选择面板的高度动态的调整支撑控件的高度提供必要的前提保障。
[0021] 在上述任一项技术方案中,优选地,还包括:所述获取单元还用于:获取聊天窗口高度;所述计算单元具体用于:根据所述聊天窗口高度及所述终端的屏幕高度计算导航栏高度。
[0022] 在该技术方案中,通过获取聊天窗口高度,以根所述聊天窗口高度及终端的屏幕高度计算导航栏高度,确保了在动态变化的界面中正确的确定出选择面板的高度。此外,通过对导航栏高度的计算,使得能够在使用实体按键或虚拟按键的终端上都能够正常的适配显示。
[0023] 具体地,当检测到聊天窗口高度大于终端的屏幕高度时,通过公式导航栏高度=聊天窗口高度-终端的屏幕高度来计算获得。
[0024] 在上述任一项技术方案中,优选地,所述确定单元具体用于:当所述导航栏高度等于零时,根据终端的屏幕高度、所述状态栏高度、所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度;当所述导航栏高度不等于零时,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0025] 在该技术方案中,通过在导航栏高度等于零时,根据终端的屏幕高度、状态栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度;以及通过在导航栏高度不等于零时,根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,使得无论终端界面上是否显示导航栏,均能够在动态变化的界面中正确的确定出选择面板的高度。
[0026] 具体地,在导航栏高度等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度,来计算选择面板的高度;在检测到导航栏高度不等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度+导航栏高度,来计算。此外,当选择面板不被拉起时,选择面板的高度默认为悬浮窗高度。
[0027] 在上述任一项技术方案中,优选地,还包括:所述调整单元还用于:在根据所述选择面板的高度调整所述支撑控件的高度的同时,控制所述背景显示控件的高度不变,以使通过所述背景显示控件显示的聊天背景图片不被压缩。
[0028] 在该技术方案中,通过在根据选择面板的高度调整支撑控件的高度的同时,控制背景显示控件的高度不变,确保了聊天背景图片不被压缩失真。
[0029] 通过以上技术方案,通过将用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件分别设置,并在聊天列表控件的下方设置支撑控件,以将支撑控件的高度动态设置为选择面板的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,同时不会造成背景显示控件被压缩,而避免聊天背景图片被压缩失真。

附图说明

[0030] 图1示出了根据本发明的实施例的聊天列表的显示方法的示意流程图;
[0031] 图2示出了根据本发明的实施例的聊天列表的显示装置的示意框图;
[0032] 图3示出了根据本发明的实施例的聊天窗口布局的示意图;
[0033] 图4示出了根据本发明的实施例的支撑控件高度的调整方法的示意流程图;
[0034] 图5示出了根据本发明的实施例的选择面板拉起时的界面示意图;
[0035] 图6示出了根据本发明的实施例的选择面板收起时的界面示意图。

具体实施方式

[0036] 为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
[0037] 在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
[0038] 图1示出了根据本发明的实施例的聊天列表的显示方法的示意流程图。
[0039] 如图1所示,根据本发明的实施例的聊天列表的显示方法,包括:步骤102,分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在所述聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;步骤104,当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度;步骤106,根据所述选择面板的高度调整所述支撑控件的高度。
[0040] 在该技术方案中,通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,同时在聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件,并根据选择面板的高度调整支撑控件的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,便于用户操作,避免了相关技术中因聊天列表中的部分聊天信息被选择面板遮挡而导致操作繁琐及影响用户使用体验的问题;同时通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,使得位于聊天列表控件下方的支撑控件的高度的改变,在压缩聊天列表控件的同时,不会造成背景显示控件被压缩,从而避免了聊天背景图片被压缩失真。
[0041] 在上述技术方案中,优选地,所述步骤104具体包括:获取终端的屏幕高度及状态栏高度;计算导航栏高度及所述悬浮窗的高度;根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0042] 在该技术方案中,通过获取终端的屏幕高度及状态栏高度,计算导航栏高度及悬浮窗的高度,并以根据终端的屏幕高度、状态栏高度、导航栏高度、悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,为后续根据选择面板的高度动态的调整支撑控件的高度提供必要的前提保障。
[0043] 在上述任一项技术方案中,优选地,所述计算导航栏高度的步骤包括:获取聊天窗口高度;根据所述聊天窗口高度及所述终端的屏幕高度计算导航栏高度。
[0044] 在该技术方案中,通过获取聊天窗口高度,以根所述聊天窗口高度及终端的屏幕高度计算导航栏高度,确保了在动态变化的界面中正确的确定出选择面板的高度。此外,通过对导航栏高度的计算,使得能够在使用实体按键或虚拟按键的终端上都能够正常的适配显示。
[0045] 具体地,当检测到聊天窗口高度大于终端的屏幕高度时,通过公式导航栏高度=聊天窗口高度-终端的屏幕高度来计算获得。
[0046] 在上述任一项技术方案中,优选地,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度的步骤具体包括:当所述导航栏高度等于零时,根据所述终端的屏幕高度、所述状态栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度;当所述导航栏高度不等于零时,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0047] 在该技术方案中,通过在导航栏高度等于零时,根据终端的屏幕高度、状态栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度;以及通过在导航栏高度不等于零时,根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,使得无论终端界面上是否显示导航栏,均能够在动态变化的界面中正确的确定出选择面板的高度。
[0048] 具体地,在导航栏高度等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度,来计算选择面板的高度;在导航栏高度不等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度+导航栏高度,来计算。此外,当选择面板不被拉起时,选择面板的高度默认为悬浮窗高度。
[0049] 在上述任一项技术方案中,优选地,还包括:在根据所述选择面板的高度调整所述支撑控件的高度的同时,控制所述背景显示控件的高度不变,以使通过所述背景显示控件显示的聊天背景图片不被压缩。
[0050] 在该技术方案中,通过在根据选择面板的高度调整支撑控件的高度的同时,控制背景显示控件的高度不变,确保了聊天背景图片不被压缩失真。
[0051] 图2示出了根据本发明的实施例的聊天列表的显示装置的示意框图。
[0052] 如图2所示,根据本发明的实施例的聊天列表的显示装置200,包括:设置单元202、确定单元204及调整单元206。
[0053] 其中,设置单元202,用于分离分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,并在所述聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件;确定单元204,用于当用于编辑聊天信息的悬浮窗接收到触发指令时,确定通过所述悬浮窗拉起的用于选择聊天信息的选择面板的高度;调整单元206,用于根据所述选择面板的高度调整所述支撑控件的高度,以使所述聊天列表控件中的聊天信息不被所述选择面板遮挡。
[0054] 在该技术方案中,通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,同时在聊天列表控件的下方设置用于调整聊天列表控件高度的支撑控件,并根据选择面板的高度调整支撑控件的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,便于用户操作,避免了相关技术中因聊天列表中的部分聊天信息被选择面板遮挡而导致操作繁琐及影响用户使用体验的问题;同时通过分别设置用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件,使得位于聊天列表控件下方的支撑控件的高度的改变,在压缩聊天列表控件的同时,不会造成背景显示控件被压缩,从而避免了聊天背景图片被压缩失真。
[0055] 在上述技术方案中,优选地,所述确定单元204包括:获取单元2042及计算单元2044。
[0056] 其中,获取单元2042,用于获取终端的屏幕高度及状态栏高度;计算单元2044,用于计算导航栏高度及所述悬浮窗的高度;所述确定单元204具体用于:根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0057] 在该技术方案中,通过获取终端的屏幕高度及状态栏高度,计算导航栏高度及悬浮窗的高度,以根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,为后续根据选择面板的高度动态的调整支撑控件的高度提供必要的前提保障。
[0058] 在上述任一项技术方案中,优选地,还包括:所述获取单元2042还用于:获取聊天窗口高度;所述计算单元2044具体用于:根据所述聊天窗口高度及所述终端的屏幕高度计算导航栏高度。
[0059] 在该技术方案中,通过获取聊天窗口高度,以根所述聊天窗口高度及终端的屏幕高度计算导航栏高度,确保了在动态变化的界面中正确的确定出选择面板的高度。此外,通过对导航栏高度的计算,使得能够在使用实体按键或虚拟按键的终端上都能够正常的适配显示。
[0060] 具体地,当检测到聊天窗口高度大于终端的屏幕高度时,通过公式导航栏高度=聊天窗口高度-终端的屏幕高度来计算获得。
[0061] 在上述任一项技术方案中,优选地,所述确定单元204具体用于:当所述导航栏高度等于零时,根据终端的屏幕高度、所述状态栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度;当所述导航栏高度不等于零时,根据所述终端的屏幕高度、所述状态栏高度、所述导航栏高度及所述悬浮窗的高度,确定通过所述悬浮窗拉起的用于选择聊天信息的所述选择面板的高度。
[0062] 在该技术方案中,通过在导航栏高度等于零时,根据终端的屏幕高度、状态栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度;以及通过在导航栏高度不等于零时,根据终端的屏幕高度、状态栏高度、导航栏高度及悬浮窗的高度,确定通过悬浮窗拉起的用于选择聊天信息的选择面板的高度,使得无论终端界面上是否显示导航栏,均能够在动态变化的界面中正确的确定出选择面板的高度。
[0063] 具体地,在导航栏高度等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度,来计算选择面板的高度;在检测到导航栏高度不等于零时,通过公式选择面板的高度=终端的屏幕高度-悬浮窗高度+状态栏高度+导航栏高度,来计算。此外,当选择面板不被拉起时,选择面板的高度默认为悬浮窗高度。
[0064] 在上述任一项技术方案中,优选地,还包括:所述调整单元206还用于:在根据所述选择面板的高度调整所述支撑控件的高度的同时,控制所述背景显示控件的高度不变,以使通过所述背景显示控件显示的聊天背景图片不被压缩。
[0065] 在该技术方案中,通过在根据选择面板的高度调整支撑控件的高度的同时,控制背景显示控件的高度不变,确保了聊天背景图片不被压缩失真。
[0066] 本发明还提出了一种终端,包括:如图2中所示的聊天列表的显示装置200。
[0067] 以下结合图3至图6对本发明的技术方案进一步说明。
[0068] 如图3所示,将聊天列表控件和背景显示控件分离;在同一窗口布局内,在聊天列表控件(ListView)下方放置一个用于调节ListView的高度的支撑控件(PanelBottomView);同时在聊天列表所在窗口之上,添加一个独立的悬浮窗,来实现输入文字、表情等功能。
[0069] 具体地,如图4所示,动态的设置支撑控件的过程包括:
[0070] 步骤402,判断是否拉起输入法或表情等功能的选择面板,若是执行步骤404;否则,继续判断。
[0071] 步骤404,获取屏幕高度(phoneHeight)。
[0072] 步骤406,获取聊天窗口高度(rootH)。
[0073] 步骤408,获取状态栏高度(statusBarHeight)。
[0074] 步骤410,计算导航栏高度(NavigationBarHeight)。
[0075] 步骤412,计算悬浮窗高度(viewHeight)。
[0076] 步骤414,判断导航栏高度是否为0,若是,执行步骤416;否则执行步骤418。
[0077] 步骤416,通过公式选择面板高度(heightDifference)=phoneHeight-viewHeight+statusBarHeight,计算选择面板高度。
[0078] 步骤418,通过公式选择面板高度(heightDifference)=phoneHeight-viewHeight+statusBarHeight+NavigationBarHeight,计算选择面板高度。
[0079] 步骤420,将支撑控件(PanelBottomView)的高度设置为选择面板高度(heightDifference)。
[0080] 在上述步骤中,由于选择面板的拉起和收起没有任何监听回调和通知事件,所以需要动态的自适应窗口的变化。首先在自定义一个布局Layout对象作为悬浮窗的根布局,并在其中的onLayout函数中设置自定义的回调对象,这样每当界面发生重绘时就可以产生一个回调动作,而选择面板拉起和收起时必然会引起界面的重绘,具体地,可通过以下自定义回调函数来实现动态的设置支撑控件的高度:
[0081]
[0082]
[0083] 此时,图3中的聊天列表控件(ListView)的高度会自动压缩,即被支撑控件PanelBottomView顶上去,如图5所示,聊天列表控件所在的区域A被自动压缩,以便显示出最近的聊天消息,区域B显示悬浮窗(即输入编辑框)及被拉起的选择面板;同时,图3中的背景显示控件不会被支撑控件PanelBottomView压缩,以确保背景图片不会失真;还可以自适应图5和图6所示的虚拟按键,即导航栏,使其在使用实体按键和虚拟按键的设备上均能正常适配显示,即解决了虚拟按键适配问题。
[0084] 此外,如图6所示,当选择面板收起时,默认选择面板的高度heightDifference=h(输入编辑框的高度,也即悬浮窗高度viewHeight)。
[0085] 通过上述算法,解决了选择面板拉起或收起的动态识别问题和虚拟按键适配问题,使得支撑控件PanelBottomView的高度被动态的设置为输入法或者表情等功能的选择面板的高度,确保聊天列表控件不被选择面板及悬浮窗遮挡并显示末尾的聊天消息;同时,当聊天列表控件的高度随着支撑控件PanelBottomView变化时,图3中Z轴最下方的背景显示控件不会被压缩变化,避免背景图片失真。
[0086] 以上结合附图详细说明了本发明的技术方案,本发明的技术方案提出了一种新的聊天列表的显示方案,通过将用于记录聊天信息的聊天列表控件和用于显示聊天背景图片的背景显示控件分别设置,并在聊天列表控件的下方设置支撑控件,以将支撑控件的高度动态设置为选择面板的高度,使得选择面板被拉起时压缩聊天列表控件以确保聊天列表中的末尾部分聊天信息总是可见,同时不会造成背景显示控件被压缩,而避免聊天背景图片被压缩失真。
[0087] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。