Android控件Tween动画Demo
来源:互联网 发布:非农数据 白银 编辑:程序博客网 时间:2024/05/22 05:33
Android动画中的Tween动画:是把控件对象不断的进行图像变化来产生旋转、平移、放缩和渐变等动画效果。
/** * 控件Tween动画 * * @description: * @author ldm * @date 2016-6-22 下午5:26:24 */public class TweenActivity extends Activity { private SeekBar seekBarX;// 拖动条控件 private SeekBar seekBarY; private SeekBar scaleSeekBarX; private SeekBar scaleSeekBarY; private SeekBar rotationSeekBarX; private SeekBar rotationSeekBarY; private SeekBar rotationSeekBarZ; private Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tween); initViews(); initEvents(); } /** * * @description:初始化控件 * @author ldm * @date 2016-6-22 下午5:26:26 */ private void initViews() { button = (Button) findViewById(R.id.button); seekBarX = (SeekBar) findViewById(R.id.translationX); seekBarX.setMax(400); seekBarY = (SeekBar) findViewById(R.id.translationY); seekBarY.setMax(800); scaleSeekBarX = (SeekBar) findViewById(R.id.scaleX); scaleSeekBarX.setMax(50); scaleSeekBarX.setProgress(10); scaleSeekBarY = (SeekBar) findViewById(R.id.scaleY); scaleSeekBarY.setMax(50); scaleSeekBarY.setProgress(10); rotationSeekBarX = (SeekBar) findViewById(R.id.rotationX); rotationSeekBarX.setMax(360); rotationSeekBarY = (SeekBar) findViewById(R.id.rotationY); rotationSeekBarY.setMax(360); rotationSeekBarZ = (SeekBar) findViewById(R.id.rotationZ); rotationSeekBarZ.setMax(360); } /** * * @description:控件设置监听事件 * @author ldm * @date 2016-6-22 下午5:26:26 */ private void initEvents() { // 按钮X方向平移动画 seekBarX.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // X方向平移 button.setTranslationX((float) progress); } }); // 按钮Y方向平移动画 seekBarY.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // Y方向平移 button.setTranslationY((float) progress); } }); // 按钮X方向缩放动画 scaleSeekBarX .setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // X方向缩放 button.setScaleX((float) progress / 10f); } }); // 按钮Y方向缩放动画 scaleSeekBarY .setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // Y方向缩放 button.setScaleY((float) progress / 10f); } }); // 按钮X方向旋转动画 rotationSeekBarX .setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // X方向旋转 button.setRotationX((float) progress); } }); // 按钮Y方向旋转动画 rotationSeekBarY .setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // Y方向旋转 button.setRotationY((float) progress); } }); // 按钮Z方向旋转动画 rotationSeekBarZ .setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { public void onStopTrackingTouch(SeekBar seekBar) { } public void onStartTrackingTouch(SeekBar seekBar) { } public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { // 设置旋转 button.setRotation((float) progress); } }); }}
—布局文件R.layout.activity_tween——-
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:splitMotionEvents="true" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dip" android:orientation="horizontal" android:splitMotionEvents="true" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="5dip" android:paddingRight="5dip" android:text="TX" android:textStyle="bold" /> <SeekBar android:id="@+id/translationX" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="15dip" android:paddingRight="5dip" android:text="TY" android:textStyle="bold" /> <SeekBar android:id="@+id/translationY" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dip" android:orientation="horizontal" android:splitMotionEvents="true" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="5dip" android:paddingRight="5dip" android:text="SX" android:textStyle="bold" /> <SeekBar android:id="@+id/scaleX" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="15dip" android:paddingRight="5dip" android:text="SY" android:textStyle="bold" /> <SeekBar android:id="@+id/scaleY" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dip" android:orientation="horizontal" android:splitMotionEvents="true" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="5dip" android:paddingRight="5dip" android:text="X" android:textStyle="bold" /> <SeekBar android:id="@+id/rotationX" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="15dip" android:paddingRight="5dip" android:text="Y" android:textStyle="bold" /> <SeekBar android:id="@+id/rotationY" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="15dip" android:paddingRight="5dip" android:text="Z" android:textStyle="bold" /> <SeekBar android:id="@+id/rotationZ" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" /> </LinearLayout> <Button android:id="@+id/rotatingButton" android:layout_width="200dip" android:layout_height="150dip" android:layout_marginLeft="50dip" android:layout_marginTop="50dip" android:text="Rotating Button" /></LinearLayout>
1 1
- Android控件Tween动画Demo
- Android笔记 动画之tween(补间)动画demo
- Android:动画:tween动画
- android 动画 -- tween动画
- android tween、frame动画
- android tween动画
- Android Tween动画
- Android---Tween动画
- Android Tween动画
- Android Tween动画
- Android之Tween动画
- android-animation Tween动画
- Android----Tween动画实例
- android tween 动画效果
- android开发 - tween动画
- Android Tween动画
- Android Tween动画
- android动画Frame、Tween
- jsp include
- MFC下画图
- git commit简介
- 利用Orion对Oracle进行压力测试
- 任务和回退栈
- Android控件Tween动画Demo
- asm-3.3.1.jar详解
- iOS 图片背景虚化 高斯模糊
- CAGradientLayer 实现背景颜色的渐变
- 下载android代码被墙的问题
- 普通表转化成分区表一例(在线重定义分区表)
- ActiveX控件安全初始化之一:实现ISafeObject接口
- 关于saltstack简介,安装和基本配置
- 连接远程Linux的桌面工具——secureCRT