Android App开发----界面缩放功能的实现

        Android API 提供了ScaleGestureDetector类用于处理缩放手势,它主要由两部分组成:

       一、ScaleGestureDetector主类,主要用于设置监测的对象和监听器,还有获取手势的各种功能相关信息,比如手指触点的坐标、触点间的距离等等。

       二、主类的内部接口ScaleGestureDetector.OnScaleGestureListener,用于处理手势,让你可以自己编写程序规定手势要执行什么样的功能。

      关系图大致如下:

程序示例:

public class MainActivity extends AppCompatActivity implements  ScaleGestureDetector.OnScaleGestureListener {  
    //首先要声明手势监测器的对象  
    ScaleGestureDetector scaleGestureDetector;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //设置检测的对象和监听器,在这里都是这个类本身所以都用this,以此创建对象并赋值。
        scaleGestureDetector = new ScaleGestureDetector(this, this);
    }
    //实现手势监听器接口则必须实现以下三个方法:
    @Override 
    public boolean onScaleBegin(ScaleGestureDetector detector){ 
         //在这里判断手势是否要被处理,要的手势返回真值,否则返回假值; 
         return true; 
    }

    @Override
    public boolean onScale(ScaleGestureDetector detector) {
        //如果上面那个方法返回了真值,则手势就会交给这个方法处理。在这里写处理规则。        
    }

    @Override
    public void onScaleEnd(ScaleGestureDetector detector) {
        //检测到手势的结束,比如手指抬起时会调用这个方法。如果你在手势结束是有什么要处理的可以写在这里。
    }
 }

     这样你的程序就可以对缩放手势进行处理了。 

官方API文档:https://developer.android.google.cn/reference/android/view/ScaleGestureDetector
                         https://developer.android.google.cn/reference/android/view/ScaleGestureDetector.OnScaleGestureListener 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值