Android视图performClick和callOnclick的区别
来源:互联网 发布:mac命令行终端 颜色 编辑:程序博客网 时间:2024/05/18 02:30
作用 : View类的performClick
和callOnclick
函数都可以实现,不用用户手动点击,直接触发View的点击事件。
区别有如下两点:
1) API等级
performClick
是在API 1中加入 callOnClick
是在API 15 中加入
2)代码实现层面
看两个方面的代码实现,如下:
/** * Directly call any attached OnClickListener. Unlike {@link #performClick()}, * this only calls the listener, and does not do any associated clicking * actions like reporting an accessibility event. * * @return True there was an assigned OnClickListener that was called, false * otherwise is returned. */ public boolean callOnClick() { ListenerInfo li = mListenerInfo; if (li != null && li.mOnClickListener != null) { li.mOnClickListener.onClick(this); return true; } return false; }
/** * Call this view's OnClickListener, if it is defined. Performs all normal * actions associated with clicking: reporting accessibility event, playing * a sound, etc. * * @return True there was an assigned OnClickListener that was called, false * otherwise is returned. */ public boolean performClick() { final boolean result; final ListenerInfo li = mListenerInfo; if (li != null && li.mOnClickListener != null) { playSoundEffect(SoundEffectConstants.CLICK); li.mOnClickListener.onClick(this); result = true; } else { result = false; } sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED); return result; }
从代码中可以看出,callOnClick
是performClick
的简化版,不包含点击播放声音,不具有辅助功能,那么什么是辅助功能,给出官方介绍如下:
许多Android用户有不同的能力(限制),这要求他们以不同的方式使用他们的Android设备。这些限制包括视力,肢体或与年龄有关,这些限制阻碍了他们看到或充分使用触摸屏,而用户的听力丧失,让他们可能无法感知声音信息和警报。
Android提供了辅助功能的特性和服务帮助这些用户更容易的使用他们的设备,这些功能包括语音合成、触觉反馈、手势导航、轨迹球和方向键导航。Android应用程序开发人员可以利用这些服务,使他们的应用程序更贴近用户。
1 0
- Android视图performClick和callOnclick的区别
- android performClick
- android performClick使用
- android performClick使用
- android performClick使用说明
- Android performClick无效
- android performClick使用说明
- android performClick使用说明
- btn.performClick()和TextView
- android 关于按钮的performclick()方法失效的问题
- 关于 CheckBox 控件 setChecked() 和 performClick() 方法的问题
- performClick()方法的使用
- 普通视图和物化视图的区别
- 普通视图和物化视图的区别
- 普通视图和物化视图的区别
- 普通视图和物化视图的区别
- 普通视图和物化视图的区别
- 普通视图和物化视图的区别
- 亚像素级角点定位算法
- ios推送消息 p12转pem证书 用于百度推送
- java调用ws服务
- wifi网络接入原理(下)——关联Association
- win8.1 无法安装 net framework3.5 问题的解决方法
- Android视图performClick和callOnclick的区别
- iOS开发---The run destination iPhone is not valid for Running the scheme问题
- 3dmax切割平行线
- python pdb 调试
- 依赖注入
- 开通支付宝口碑收款码提现免手续费,信用卡转账秒到支付宝
- mysql事务-隔离级别
- 【设计模式】【十】工厂方法模式
- 欢迎访问zjunzhao的博客