写点什么

Android 面试题之动画 + 事件处理篇,腾讯、美团 Android 面试经验分享

用户头像
Android架构
关注
发布于: 刚刚

提示:秋招在即,计蒙准备在国庆假期结束前整理一套 Android 初级面试题籍,希望对大家有所帮助




提示:以下是本篇文章正文内容


动画


=================================================================


1、Android 中的动画有哪几类




帧动画、补间动画、属性动画




2、动画能组合在一起使用么?




可以将动画组合在一起使用 AnimatorSet,


AnimatorSet.play() 播放当前动画的同时可以


  • .with() :将现有动画和传入的动画同时执行

  • .after() :将现有动画插入到传入的动画之后执行

  • .before() : 将现有动画插入到传入的动画之前执行




3、插值器的种类有哪些?




  • AccelerateDecelerateInterpolator :在动画开始与结束的地方速率改变比较慢,在中间的时候加速

  • AccelerateInterpolator:在动画开始的地方速率改变比较慢,然后开始速率变化加快

  • LinearInterpolator:以常量速率改变

  • AnticipateInterpolator:开始的时候向后然后向前甩

  • PathInterpolator:动画执行的效果按贝塞尔曲线

  • anticipateOvershootInterpolator:开始的时候向后然后向前甩一定值后返回最后的值

  • CycleInterpolator:动画循环播放特定的次数,速率改变沿着正弦曲线

  • OvershootInterpolator:向前甩一定值后再回到原来位置

  • BounceInterpolator:动画结束的时候有弹起效果




4.如何自定义插值器




写一个类实现 Interpolator 接口,


Interpolator 是一个空的接口继承了 TimeInterpolator 接口,


定义 getInterpolation 方法即可




5.如何修改 Activity 进入和退出动画




可以通过两种方式,一是通过定义 Activity 的主题,二是通过覆写 Activity 的 overridePendingTransition 方法。




事件处理


===================================================================


1、Handler 机制




Handler 能充当子线程和主线程之间的桥梁。


通常将 Handler 声明在 Activity 中,然后覆写 Handler 中的 handleMessage 方法,当子线程调用 handler.sendMessage()方法后 handleMessage 方法就会在主线程中执行。


这里面除了 Handler、Message 外还有隐藏的 Looper 和 MessageQueue 对象。在主线程中 Android 默认已经调用了 Looper.preper()方法,调用该方法的目的是在 Looper 中


创建 MessageQueue 成员变量并把 Looper 对象绑定到当前线程中。当调用 Handler 的 sendMessage(对象)方法的时候就将 Message 对象


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


添加到了 Looper 创建的 MessageQueue 队列中,同时给 Message 指定了 target 对象,其实这个 target 对象就是 Handler 对象。主线程默认执行了 Looper.looper()方法,该方法从 Looper 的成员变量 MessageQueue 中取出 Message。


然后调用 Message 的 target 对象的 handleMessage()方法。这样就完成了整个消息机制。




2、onTouch 和 onTouchEvent 有什么区别




这两个方法都是在 View 的 dispatchTouchEvent 中调用的,onTouch 优先于 onTouchEvent 执行。如果在 onTouch 方法中通过返回 true 将事件消费掉,onTouchEvent 将不会再执行。

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
Android面试题之动画+事件处理篇,腾讯、美团Android面试经验分享