一种Android列表视图组件的使用方法

文档序号:9396620阅读:523来源:国知局
一种Android列表视图组件的使用方法
【技术领域】
[0001]本发明涉及Android系统操作领域,尤其涉及一种Android列表视图组件的使用方法。
【背景技术】
[0002]目前看新闻或者逛贴吧,首先看到的都是列表显示的标题和摘要,想要看详细内容需要点击标题进而跳转到下一个Activity才能阅读,中间有暂时的停顿,影响阅读的连贯性和流畅性。而且在阅读详细内容时想要返回到标题页面也要经过Activity的跳转,对于大屏手机,频繁的按返回键手指需要移动较长的距离。
[0003]在目前的手机应用的文本显示中,一般是以列表的形式显示文本的标题和摘要,再通过点击操作跳转到先一个Activity实现文本详细内容的显示,若要再次查看标题和摘要,需要按返回键。以上过程都是通过点击视图组件或者按键实现文本的预览和显示。操作比较单一,而且在跳转Activity时会出现暂时的停顿,影响阅读的连贯性。对于大屏手机或者休闲的时候,有些用户喜欢双指操作手机,以上方案无法满足这类用户的体验。

【发明内容】

[0004]鉴于上述问题,本申请记载了一种Android(即安卓操作系统)列表视图组件的使用方法,适用于具有Android系统的智能终端中列表视图组件,所述方法包括步骤:
[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]参考所附附图,以更加充分的描述本发明的实施例。然而,所附附图仅用于说明和阐述,并不构成对本发明范围的限制。
[0031]图1为本发明一种Android列表视图组件的使用方法的总体流程图;
[0032]图2为本发明一种Android列表视图组件的使用方法中触摸点位置变化的流程图;
[0033]图3为本发明一种Android列表视图组件的使用方法中判定触摸事件后进行相应处理的流程图;
[0034]图4为本发明一种Android列表视图组件的使用方法中双指拨开操作的流程图;
[0035]图5为本发明一种Android列表视图组件的使用方法中双指合并操作的流程图。
【具体实施方式】
[0036]下面结合附图和具体实施例对本发明的Android列表视图组件的使用方法进行详细说明。
[0037]列表显示组件包含列表项显示组件,列表项显示组件包含标题页显示组件和详细内容显示组件。列表显示组件继承系统显示组件的ListView,列表项显示组件继承自系统的ViewGroup。在布局xml文件里定义列表项显示组件的结构。列表加载时由列表适配器从数据库或者网络获得数据并绑定到列表项中,适配器首次生成列表项时从布局xml文件中的属性配置列表项组件。在xml里配置的标题页显示组件为Visible属性(可见属性),即首次打开就显示,而详细内容显示组件的属性配置为Gone (隐藏属性),即首次打开时默认隐藏。配置了这些属性后,首次打开列表显示组件时,默认只显示列表项,隐藏详细内容。适配器在加载数据时只会加载标题信息并绑定到标题显示组件上,暂时不对详细内容的数据进行处理。
[0038]本发明需要用到安卓系统里的android, widget.ListView类,重写了 ListView的事件拦截监听方法,对触摸事件进行定制化处理。还需要用到列表适配器Adapter,该类是视图和数据源之间的桥梁,它的作用有准备列表需要的数据源,将数据源绑定到列表的子组件列表项上。最后列表加载该适配器进行显示。布局xml文件是列表中的每一项对应的布局,包含标题和默认隐藏的详细内容。文本的标题和详细内容保存在数据库中。
[0039]列表显示组件属于安卓系统组件,它拥有自己的子组件,也就是列表项组件。它们不仅有显示内容信息的功能,还可以对在其上的操作进行监听和处理,它利用系统的触摸事件监听接口,注册事件监听器后,可以监听触摸事件。触摸事件监听器可以监听的事件类型有多种,包括单点触摸事件和多点触摸事件等,本发明中会对多点触摸事件进行处理。多点触摸事件中,触摸屏会记录每个点的初始位置和最终位置,也就是点从屏幕上消失时的位置,在这个过程中同时会记录每个点的实时位置。若触摸事件为两点且两点的间距持续扩大,对应双指拨开的操作,此时,列表项显示组件和列表显示组件都会监听到该事件,但只能由其中一个对该事件进行处理。由于该事件是双指拨开操作,程序理解执行该事件的主体需要打开列表项的内容,所以由列表显示组件拦截并处理该触摸事件,列表通过系统提供的接口拦截该事件后,就会对事件进行相应的处理,然后销毁该事件以阻止其它显示组件对其进行处理,引起异常现象。
[0040]如图1所示,一种Android列表视图组件的使用方法,适用于具有Android系统的智能终端中列表视图组件,包括:
[0041]当用户点击所述智能终端的触摸屏发出触摸事件时,列表显示组件监听所述触摸事件;
[0042]计算所述触摸事件中两个触摸点的位置变化;
[0043]根据所述位置变化判断列表显示组件还是列表项显示组件拦截所述触摸事件;
[0044]所述触摸事件进行相应处理。
[0045]具体来说,所述触摸事件包括两种:双指拨开操作和双指合并操作。当用户发出双指拨开操作时,即用户同时触摸显示屏上的两个不同点并分别进行划动操作,两个所述触摸点之间的距离变大;当用户发出双指合并操作时,即用户同时触摸显示屏上的两个不同点并分别进行划动操作,两个所述触摸点之间的距离变小。
[0046]如果所述触摸事件为双指拨开操作,那么列表项显示组件拦截并处理该触摸事件,相应处理为打开列表项所对应的详细内容显示组件;如果所述触摸事件为双指合并操作,那么列表显示组件拦截并处理该触摸事件,相应处理为打开列表显示组件。
[0047]列表组件拦截事件后,首先会对该事件进行进一步分析,两点点触摸事件中,当第一个点和第二个点按下去的事件,系统提供的事件监听接口会传入事件参数,该参数包含了事件的类型和触摸点的位置等信息,程序可以在点按下去的时候记录两点和位置并计算两点之间的距离,保存在进程的内部变量中。同样,当事件点离开触摸屏时,程序也记录相应的位置,当两个点全部离开屏幕时,分析对比触摸事件发生和结束时,两个触摸点之间的位置变化。第一种情况:两个触摸点之间的距离扩大,即双指拨开操作;第二种情况:两个点之间的距离缩小,即双指合并操作。列表组件会定位该事件发生的具体位置,也就是触摸事件发生的那个列表项,这里会出现几种情况,当触摸事件跨越多个列表项时,程序不会对该事件进行处理,默认为无效操作。只有当触摸事件只发生在单独的一个列表项时才会进行处理。对于双指拨开操作,程序需要显示列表项的详细内容,这里需要详细内容的显示组件,根据详细内容的数据类型决定组件是用文本显示组件还是图片显示组件等。这个详细内容的显示组件是包含在该列表项组件中的,默认情况是隐藏的,只有当需要显示详细内容时才会出现。当监听到双指拨开操作后,将详细
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1