Android2.2 API 中文文档系列(9) —— ZoomButton

  1. 云栖社区>
  2. 博客>
  3. 正文

Android2.2 API 中文文档系列(9) —— ZoomButton

科技小先锋 2017-11-14 02:04:00 浏览805
展开阅读全文

正文

  一、类结构

 

    java.lang.Object

      android.view.View

        android.widget.ImageView

                    android.widget.ImageButton

             android.widget.ZoomButton

 

    public class ZoomButton extends ImageButton implements View.OnLongClickListener

 

  二、概述

    

    缩放按钮,实际上是很普通的两个按钮,可以简单的理解为一个ImageButton加上一张缩放的图标。如下代码:

  

 

  三、公共方法
 

    public boolean dispatchUnhandledMove (View focused, int direction)

    对于获得焦点的View,这个方法是捕获箭头事件最后的机会。这就是在获取焦点的View没有在内部处理、系统在要求的方向也不能找到一个新的View让其获得焦点时调用。

                   参数

                            focused  当前焦点View

                            direction焦点移动的方向。其中之一:FOCUS_UP, FOCUS_DOWN, FOCUS_LEFT FOCUS_RIGHT.

                   返回值

                            如果为true,将清除这个View未处理的事件。

         (注:从源码中可看出ZoomButton覆盖了父类的该方法,在super之前调用了一下clearFocus,如下代码:

  

 

 

         public boolean onKeyUp (int keyCode, KeyEvent event)

         默认实现至KeyEvent.Callback.onKeyMultiple() :当点击执行时KEYCODE_DPAD_CENTER  KEYCODE_ENTER被释放。

                   参数

                            keyCode 按下按钮代表的键值,属于KeyEvent (注:KeyEvent的静态属性)

                            event       KeyEvent对象,定义按钮动作

                   返回值

                            如果您处理这一事件中,返回true如果你想允许事件被下一个接收器处理,返回false

                           

         public boolean onLongClick (View v)

         当一个View被长按时调用。

                   参数

                            v      被长按的View

                   返回值

                            如果返回true,这个回调在长按时被执行了,反之返回false.

 

         public boolean onTouchEvent (MotionEvent event)

         实现这个方法处理触摸屏移动事件。

                   参数

                            event       该移动事件.

                   返回值

                            如果是true,该事件是触摸,反之返回false

 

         public void setEnabled (boolean enabled)

         设置这个View启用状态。

                   参数

                            enabled 设置true表示启用,反之表示禁用。

 

         public void setZoomSpeed (long speed)

         (注:单独使用无实际意义,可以用来存放临时数据)



本文转自over140 51CTO博客,原文链接:http://blog.51cto.com/over140/582701,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论