一种安卓系统上Toast控件的优化方法

文档序号:8257990阅读:249来源:国知局
一种安卓系统上Toast控件的优化方法
【技术领域】
[0001]本发明涉及一种安卓系统上Toast控件的优化方法,属于多媒体技术领域。
技术背景
[0002]随着科学技术的发展,各种电子设备拥有越来越多的功能,例如手机、平板电脑、智能电视,给用户带来更好的体验。在这些智能电子设备中,80 %采用安卓系统。
[0003]Toast是安卓系统上一种非常方便的消息提示框,它会在程序界面上显示一个简单的提示信息,这个信息提示框用于向用户生成简单的提示信息。Toast提示信息时不会获得焦点,它提示消息后过一段时间会自动消失(Toast类中有两个静态常量:L0NG_DELAY =3.5S,SH0RT_DELAY = 2S,在构造Toast对象时用户可以选择这两个常量中的一个作为显示时间)。
[0004]由于Toast上提示的信息量一般都比较少,用户在很短的时间内就获取到提示信息,然而Toast又不能获得焦点即用户不能关掉已看完的Toast,这个时候就会在电子设备的屏幕上多了一个没有用的黑色框(Toast提示信息框的默认颜色是黑色),影响了用户体验。更为严重的是,如果在一个Activity上设置了多个Toast控件时,且用户操作比较快时,连续点击了多次屏幕产生了多个Toast,由于每一个Toast都有一定的显示时间,这个时候就会产生现在显示的Toast并不对应用户此时的操作。还有一种情况就是,在当前的Activity退出后,还会继续显示该Activity中产生的Toast。
[0005]以上出现的这些问题,应用开发者在开发过程中通过大量的判断代码解决屏幕上显示的Toast与用户此时操作不对应的问题:调用Toast类的静态方法makeText O,设定要显示提示信息以及显示的时间是LONG或SHORT,然后调用show O方法,显示Toast对象;该Toast对象在设定的显示时间到达后,会自动的关闭;如果在该Activity上产生了多个Toast,首先给Toast类型的变量赋值为空,然后在调用Toast对象时,检测Toast对象是否为空,如果为空,则调用静态的方法makeText O,否则,调用setText O方法更新提示信息。但是,这种解决方案增加了应用开发者开发的工作量和大量的重复代码,运行速度变慢,用户体验度不高。

【发明内容】

[0006]针对现有技术的不足,本发明公开了一种安卓系统上Toast控件的优化方法;
[0007]本发明在监听到当前的Activity显示界面上有切换当前的Activity显示界面的操作时,关闭Toast信息提示框。
[0008]本发明的技术方案为:
[0009]一种安卓系统上Toast控件的优化方法,在INotificat1nManager接口的通知管理服务类Notificat1nManagerService中设置监听函数,具体步骤包括:
[0010](I)调用 Toast 类的静态方法 makeText (Context context, CharSequencetext, int durat1n),对参数 context、text、durat1n 分别赋值:上下文环境 context 赋值为当前的Activity显示界面,text赋值为Toast信息提示框显示的内容,durat1n赋值为Toast信息提示框显示的时间T ;
[0011](2)调用show O方法,显示当前的Activity显示界面上的Toast信息提示框;
[0012](3)调用监听函数,监听当前的Activity显示界面上在时间T内是否有切换当前的Activity显示界面的操作,如果有,则关闭Toast信息提示框,否则,待时间T到达后自动关闭Toast信息提示框。
[0013]根据本发明优选的,所述切换当前的Activity显示界面的操作包括在当前的Activity显示界面上有更新当前的Activity显示界面内容的点击动作及点击返回键进入上一个Activity显示界面的操作。
[0014]根据本发明优选的,在通知管理服务类Notificat1nManagerService中增加对当前Activity显示界面上ACT10N_D0WN和KEYCODE_BACK动作进行监听的监听函数,ACT10N_D0WN表示在当前的Activity显示界面上有更新当前的Activity显示界面内容的点击动作,KEYCODE_BACK表示在当前的Activity显示界面上点击返回键进入上一个Activity显示界面的操作。
[0015]根据本发明优选的,步骤(3)中,所述关闭Toast信息提示框,具体是指:在BroadcastReceiver类的实现对象中,调用Toast对象的hide O方法,关闭Toast信息提示框。
[0016]根据本发明优选的,步骤(3)中,所述自动关闭Toast信息提示框,具体是指:调用Toast类中的cancel O函数,自动关闭Toast信息提示框。
[0017]INotificat1nManager 接口、通知管理服务类 Notif icat1nManagerService、Toast 类的静态方法 makeText(Context context,CharSequence text, intdurat1n)、show ()方法、对ACT10N_D0WN和KEYCODE_BACK动作进行监听的监听函数、BroadcastReceiver类、hide O方法、cancel O函数都是现有的已经设计好的。
[0018]本发明的有益效果为:
[0019]与现有安卓系统中的Toast控件的实现方法相比,通过本发明优化后的Toast控件,在应用程序中显示Toast信息提示框时,不会出现Toast信息提示框的延迟,提高了用户体验;对应用开发者而言,本发明优化后的Toast控件,减少了他们的开发工作量和程序中的重复代码,增加了运行速度。
【附图说明】
[0020]图1为本发明所述安卓系统上Toast控件的优化方法流程图。
【具体实施方式】
[0021]下面结合说明书附图和实施例对本发明作进一步限定,但不限于此。
[0022]实施例1
[0023]—种安卓系统上Toast控件的优化方法,在INotificat1nManager接口的通知管理服务类Notificat1nManagerService中设置监听函数,具体步骤包括:
[0024](I)调用 Toast 类的静态方法 makeText (Context context, CharSequencetext, int durat1n),对参数 context、text、durat1n 分别赋值:上下文环境 context 赋值为当前的Activity显示界面,text赋值为Toast信息提示框显示的内容,durat1n赋值为Toast信息提示框显示的时间T ;
[0025](2)调用show O方法,显示当前的Activity显示界面上的Toast信息提示框;
[0026](3)调用监听函数,监听当前的Activity显示界面上在时间T内是否有切换当前的Activity显示界面的操作,如果有,则关闭Toast信息提示框,否则,待时间T到达后自动关闭Toast信息提示框。
[0027]所述切换当前的Activity显示界面的操作包括在当前的Activity显示界面上有更新当前的Activity显示界面内容的点击动作及点击返回键进入上一个Activity显示界面的操作。
[0028]实施例2
[0029]根据实施例1所述优化方法,其区别在于,在通知管理服务Notificat1nManagerService 中增加对当前 Activity 显不界面上 ACT10N_D0WN 和KEYC0DE_BACK动作进行监听的监听函数,ACT10N_D0WN表示在当前的Activity显示界面上有更新当前的Activity显示界面内容的点击动作,KEYC0DE_BACK表示在当前的Activity显示界面上点击返回键进入上一个Activity显示界面的操作。
[0030]实施例3
[0031]根据实施例1所述优化方法,其区别在于,步骤(3)中,所述关闭Toast信息提示框,具体是指:在BroadcastReceiver类的实现对象中,调用Toast对象的hide O方法,关闭Toast信息提示框。
[0032]实施例4
[0033]根据实施例1-3任一所述优化方法,其区别在于,步骤(3)中,所述自动关闭Toast信息提示框,具体是指:调用Toast类中的cancel O函数,自动关闭Toast信息提示框。
【主权项】
1.一种安卓系统上Toast控件的优化方法,其特征在于,在INotificat1nManager接口的通知管理服务类Notificat1nManagerService中设置监听函数,具体步骤包括:(1)调用Toast 类的静态方法 makeText (Context context, CharSequence text, intdurat1n),对参数context、text、durat1n分别赋值:上下文环境context赋值为当前的Activity显示界面,text赋值为Toast信息提示框显示的内容,durat1n赋值为Toast信息提示框显示的时间T ; (2)调用showO方法,显示当前的Activity显示界面上的Toast信息提示框; (3)调用监听函数,监听当前的Activity显示界面上在时间T内是否有切换当前的Activity显示界面的操作,如果有,则关闭Toast信息提示框,否则,待时间T到达后自动关闭Toast信息提示框。
2.根据权利要求1所述优化方法,其特征在于,所述切换当前的Activity显示界面的操作包括在当前的Activity显示界面上有更新当前的Activity显示界面内容的点击动作及点击返回键进入上一个Activity显示界面的操作。
3.根据权利要求1所述优化方法,其特征在于,在通知管理服务类 Notificat1nManagerService 中增加对当前 Activity 显不界面上 ACT10N_D0WN 和 KEYCODE_BACK动作进行监听的监听函数,ACT10N_D0WN表示在当前的Activity显示界面上有更新当前的Activity显示界面内容的点击动作,KEYCODE_BACK表示在当前的Activity显示界面上点击返回键进入上一个Activity显示界面的操作。
4.根据权利要求1所述优化方法,其特征在于,步骤(3)中,所述关闭Toast信息提示框,具体是指:在BroadcastReceiver类的实现对象中,调用Toast对象的hide O方法,关闭Toast信息提示框。
5.根据权利要求1-4任一所述优化方法,其特征在于,步骤(3)中,所述自动关闭Toast信息提示框,具体是指:调用Toast类中的cancel O函数,自动关闭Toast信息提示框。
【专利摘要】本发明涉及一种安卓系统上Toast控件的优化方法,在INotificationManager接口的通知管理服务类NotificationManagerService中设置监听函数,调用监听函数,监听当前的Activity显示界面上在时间T内是否有切换当前的Activity显示界面的操作,如果有,则关闭Toast信息提示框,否则,待时间T到达后自动关闭Toast信息提示框。通过本发明优化后的Toast控件,在应用程序中显示Toast信息提示框时,不会出现Toast信息提示框的延迟,提高了用户体验;减少了他们的开发工作量和程序中的重复代码,增加了运行速度。
【IPC分类】G06F9-44
【公开号】CN104572110
【申请号】CN201510026242
【发明人】张海霞, 高凯, 袁东风, 杨春燕, 朱丽娜
【申请人】山东大学
【公开日】2015年4月29日
【申请日】2015年1月19日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1