Android简单交互,点击控件时短暂的放大后恢复正常
2015-12-18 17:41
453 查看
原理:监听控件的事件,在touch事件触发是播放放大动画;
说明:在onTouch()事件中,动画的播放要放在对DOWN事件的处理中,不能简单的放在onTouch()的方法里面里了事,那样会有一个多次不均匀触发的bug;
动画放在OnClick方法里也勉强可以,但是有个问题,它在手指抬起时才触发,如果有这样特殊需求的话倒是可以,不过应该很少吧。
MainActivity代码:
动画的代码:
超简单吧!哈哈,其实细说起来也不少内容,关于不同动画的属性什么的,控件直接可以播放动画这也是知识点。
说明:在onTouch()事件中,动画的播放要放在对DOWN事件的处理中,不能简单的放在onTouch()的方法里面里了事,那样会有一个多次不均匀触发的bug;
动画放在OnClick方法里也勉强可以,但是有个问题,它在手指抬起时才触发,如果有这样特殊需求的话倒是可以,不过应该很少吧。
MainActivity代码:
private LinearLayout llA; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); llA = (LinearLayout) findViewById(R.id.ll_a); llA.setFocusableInTouchMode(true); llA.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.normal_to_large); v.startAnimation(animation); break; } return false; } }); }
动画的代码:
<set xmlns:android="http://schemas.android.com/apk/res/android"> <scale android:interpolator= "@android:anim/accelerate_decelerate_interpolator" android:fromXScale="1.0" android:toXScale="1.2" android:fromYScale="1.0" android:toYScale="1.2" android:pivotX="50%" android:pivotY="50%" android:duration="300" android:repeatCount="0" /> </set>
超简单吧!哈哈,其实细说起来也不少内容,关于不同动画的属性什么的,控件直接可以播放动画这也是知识点。
相关文章推荐
- Android Handler机制
- 使用android studio开发android项目一:hello android
- Android Studio中的六种依赖
- android setCompoundDrawables和setCompoundDrawablesWithIntrinsicBounds区别
- Android屏幕适配全攻略(最权威的官方适配指导)
- Android 获取view的位置和设置view的位置
- Android apk动态加载机制的研究(二)
- Android listview 的优化
- android toast 时间
- Android等宽字体
- Android等宽字体
- Android中常见的热门标签的流式布局的实现
- Android实战 - 音心播放器 (MusicListActivity - 分类信息界面实现)
- Android Context详解
- 设计模式---Android中的观察者模式
- android-Sensors
- Android之zxing二维码生成与识别
- Android近场通信---高级NFC(二)
- Android SQLite高级操作之泛型对象操作
- 有关于TextView 利用到在内容中添加图片的效果