`
iaiai
  • 浏览: 2196132 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android 旧电视退出效果

 
阅读更多
费话不多说,直接上代码


TVOffAnimation.java
package com.iaiai.activity;

import android.graphics.Matrix;
import android.view.animation.AccelerateDecelerateInterpolator;
import android.view.animation.Animation;
import android.view.animation.Transformation;

/**
 * 
 * <p>
 * Title: TVOffAnimation.java
 * </p>
 * <p>
 * E-Mail: 176291935@qq.com
 * </p>
 * <p>
 * QQ: 176291935
 * </p>
 * <p>
 * Http: iaiai.iteye.com
 * </p>
 * <p>
 * Create time: 2012-10-8 下午1:33:44
 * </p>
 * 
 * @author 丸子
 * @version 0.0.1
 */
public class TVOffAnimation extends Animation {

	private int halfWidth;
	private int halfHeight;

	@Override
	public void initialize(int width, int height, int parentWidth, int parentHeight) {

		super.initialize(width, height, parentWidth, parentHeight);
		setDuration(500);
		setFillAfter(true);
		// 保存View的中心点
		halfWidth = width / 2;
		halfHeight = height / 2;
		setInterpolator(new AccelerateDecelerateInterpolator());

	}

	@Override
	protected void applyTransformation(float interpolatedTime, Transformation t) {

		final Matrix matrix = t.getMatrix();
		if (interpolatedTime < 0.5) {
			matrix.preScale(1 + 0.625f * interpolatedTime, 1 - interpolatedTime / 0.8f + 0.003f, halfWidth, halfHeight);
		} else {
			matrix.preScale(7.5f * (1 - interpolatedTime), 0.003f, halfWidth, halfHeight);
		}
	}
}


MainActivity.java
package com.iaiai.activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;

/**
 * 
 * <p>
 * Title: MainActivity.java
 * </p>
 * <p>
 * E-Mail: 176291935@qq.com
 * </p>
 * <p>
 * QQ: 176291935
 * </p>
 * <p>
 * Http: iaiai.iteye.com
 * </p>
 * <p>
 * Create time: 2012-10-8 下午1:33:44
 * </p>
 * 
 * @author 丸子
 * @version 0.0.1
 */
public class MainActivity extends Activity {
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		findViewById(R.id.btn).setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				findViewById(R.id.root).startAnimation(new TVOffAnimation());
			}
		});
	}
}


main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/root"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@android:color/white"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello" />

    <Button
        android:id="@+id/btn"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="动画" />

</LinearLayout>


分享到:
评论

相关推荐

    Android-AndroidActivity侧滑退出库

    标题 "Android-AndroidActivity侧滑退出库" 指的是在Android应用开发中,使用特定的库实现Activity的侧滑退出功能。这种功能常见于许多现代Android应用,它为用户提供了一种直观且易于操作的界面返回方式,类似于...

    Android-Android实现了可以滑动左侧边缘退出Activity的功能

    在Android应用开发中,滑动边缘退出Activity是一种常见的交互设计,它可以提供更加直观和便捷的用户界面体验。本文将深入探讨如何在Android中实现这一功能,主要涉及Android自定义手势识别、视图层级管理和Activity...

    UncaughtException不让Android应用异常退出

    "UncaughtException不让Android应用异常退出"这个主题,就是关于如何处理程序中的未捕获异常,以防止应用突然崩溃,从而提升用户体验。在这个问题上,我们可以从以下几个方面来探讨: 1. **...

    Android-图片浏览器支持缩放下拉缩小退出

    "Android-图片浏览器支持缩放下拉缩小退出"这个项目旨在实现一个与微信图片浏览效果类似的图片查看器,具备手势缩放、下拉缩小以及平滑退出的功能。接下来,我们将深入探讨实现这些功能的关键知识点。 首先,我们要...

    android程序意外退出自动重启

    "android程序意外退出自动重启"这个主题涉及到如何在程序出现意外错误导致崩溃时,实现程序的自动恢复和持续运行。以下是一些关键知识点的详细说明: 1. **异常处理**: - 在Android中,每个应用都有一个独立的...

    android按返回两次退出

    android中实现按两次返回键退出Activity,不再是返回一次就退出应用,第一次点击提示“再按一次退出应用”

    Android 呼吸灯效果

    在Android开发中,实现“呼吸灯效果”是一种常见的动态UI设计,它通常用于通知或提示用户有新的消息或事件发生。这种效果通过动画的淡入淡出循环播放来模拟现实生活中电子设备上的呼吸灯效果。在本文中,我们将深入...

    android自定义3d画廊效果

    在Android开发中,自定义控件是提升应用用户体验和视觉效果的重要手段。"android自定义3d画廊效果"是一个专为Android平台设计的特色功能,它通过实现3D视角的图片滚动效果,为用户提供了新颖且引人入胜的交互体验。...

    android 退出app 退出应用程序

    2 设置入口activity的启动模式android:launchMode="singleTask",重写onNewIntent方法, 在退出activity时,设置intent.setAction("exit_app");然后跳转到栈底activity, 这样就可以清除栈底之外的所有activity,...

    android 磨砂透明效果的dialog

    在Android开发中,实现磨砂透明效果的Dialog是一种常见的需求,它可以为用户界面增添美观且交互性强的元素。本文将详细讲解如何通过自定义Dialog来实现这种效果,并且确保当用户点击Dialog之外的区域时,Dialog能够...

    Android 点击两次返回键退出程序

    在Android系统中,点击两次返回键退出程序是一种常见的应用安全机制,目的是防止用户意外地退出正在使用的应用。这种设计能够确保用户在误触返回键时,不会立即退出应用,而是需要再次确认。以下是对这个主题的详细...

    Android动画效果大全

    在Android开发中,动画效果是提升用户体验和应用视觉吸引力的关键元素。本文将深入探讨"Android动画效果大全",包括各种类型的动画以及如何基于这些技术实现炫酷的特效。 首先,Android提供两种主要的动画机制:帧...

    Android 应用程序异常退出自动重启

    Android 应用崩溃自动启动 给用户给好的体验 本应用还可以扩展为类似京东崩溃时弹出信息反馈框 这需要你自己实现哦 另外欢迎关注我的新浪微博@MinganCai 有问题可以@我 我会尽快给你们回复的 雷锋

    android 各种加载动画效果

    在Android开发中,加载动画效果是提升用户体验的重要一环,特别是在数据加载、网络请求或界面切换时,良好的加载动画能够使用户在等待过程中感受到趣味性和专业性。本资源包"android 各种加载动画效果"提供了多种...

    android两次按返回键退出程序实现

    ### Android 两次按返回键退出程序实现 在Android开发中,有时我们需要实现这样一个功能:当用户连续两次按下返回键时,应用才退出。这种设计的主要目的是为了提高用户体验,避免用户因误触返回键而导致应用程序...

    Android 完全退出程序,关闭所有Activity

    在Android应用开发中,完全退出程序意味着结束所有与应用程序相关的活动(Activity)并释放系统资源。用户通常期望点击“退出”按钮后,整个应用程序能够完全关闭,而不是仅仅停留在后台运行。下面我们将详细讨论...

    Android 实现ListView 3D效果 - 2 - 弹性滚动,Fling

    本篇将深入探讨如何在Android中实现ListView的3D弹性滚动,即Fling效果。 首先,要理解3D效果的本质,它通常是通过改变ListView项的透明度、大小或位置来模拟深度感。在Android中,我们可以通过自定义Adapter和...

    android 翻书效果 特别逼真的

    android 翻书效果 特别逼真的android 翻书效果 特别逼真的android 翻书效果 特别逼真的android 翻书效果 特别逼真的android 翻书效果 特别逼真的android 翻书效果 特别逼真的

    android自定义效果——随机抽奖

    在Android开发中,自定义效果往往能够为应用增添独特的交互体验,吸引用户的注意力。本教程将专注于创建一个随机抽奖功能,模拟超市常见的指针转盘抽奖效果。这一过程涉及到的关键技术包括Android动画、随机数生成...

    android滑轮WheelView效果

    在"android滑轮WheelView效果"这个主题中,我们可以看到开发者提供了一些示例应用,这些示例涵盖了多种使用场景。例如: 1. **密码滚动**:这个示例展示了如何使用`WheelView`实现数字密码输入。通常,这会涉及到...

Global site tag (gtag.js) - Google Analytics