`
iaiai
  • 浏览: 2204933 次
  • 性别: 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-Android实现了可以滑动左侧边缘退出Activity的功能

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

    UncaughtException不让Android应用异常退出

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

    解决android退出整个应用的例子

    如果设置了`finish()`,当前Activity也会被关闭,从而达到退出应用的效果。 2. **使用System.exit(0)**:这是一个Java级别的方法,可以立即结束应用程序的运行。但这并不是一个推荐的方法,因为它可能导致资源未...

    android按返回两次退出

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

    Android仿TV关闭效果

    Android下,实现电视机关闭的效果,例如优酷的关闭程序效果以及小米的锁屏效果等。

    怎样完全退出android程序

    如果想退出Android程序,一般都是调用finish()、System.exit(0)android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序的效果,...

    Android自定义对话框实现QQ退出界面

    在Android开发中,自定义对话框...通过以上步骤,我们成功地实现了Android自定义对话框,模拟了QQ退出界面的效果。在实际应用中,可以根据项目需求对这个对话框进行进一步的定制和优化,以提供更加个性化的用户体验。

    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完美退出app的实例代码.pdf

    android完美退出app的实例代码.pdf

    Android动画效果大全

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

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

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

    android 各种加载动画效果

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

    android水波纹效果

    本篇将深入探讨如何在Android应用中实现水波纹效果,主要分为两种方法:自定义View实现和使用系统自带的RippleDrawable。 首先,我们来看自定义View实现水波纹效果的方法。这通常涉及到对Canvas的深入理解和使用。...

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

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

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

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

    Android-完全退出程序的方法.zip

    Android-完全退出程序的方法.zip Android-完全退出程序的方法.zip Android-完全退出程序的方法.zip

Global site tag (gtag.js) - Google Analytics