`

不用线程做Android软件欢迎界面,透明效果,完成后自动跳转

阅读更多

最近在网上看到一些Android软件的欢迎界面做得都挺复杂的(个人觉得),因为一般都用到了线程,接着就想有没有简单一点的办法。然后就有了下文:

 

这个欢迎界面主要是借助Animation动画来实现的(效果如图),不需要用到线程。实现的方法很简单,为动画设置监听就可以了,在动画播放结束时结束欢迎界面并跳转到软件的主界面。

 

  

 

/**
 * 欢迎界面
 * @author 小建枫叶
 *
 */
public class WelcomeActivity extends Activity implements AnimationListener {
	private ImageView  imageView = null;
	private Animation alphaAnimation = null;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		
		super.onCreate(savedInstanceState);
		setContentView(R.layout.welcome);
		imageView = (ImageView)findViewById(R.id.welcome_image_view);
		alphaAnimation = AnimationUtils.loadAnimation(this, R.anim.welcome_alpha);
		alphaAnimation.setFillEnabled(true); //启动Fill保持
		alphaAnimation.setFillAfter(true);  //设置动画的最后一帧是保持在View上面
		imageView.setAnimation(alphaAnimation);
		alphaAnimation.setAnimationListener(this);  //为动画设置监听
 	}
	
	@Override
	public void onAnimationStart(Animation animation) {
		
	}
	
	@Override
	public void onAnimationEnd(Animation animation) {
		//动画结束时结束欢迎界面并转到软件的主界面
		Intent intent = new Intent(this, MainActivity.class);
		startActivity(intent);
		this.finish();
	}
	
	@Override
	public void onAnimationRepeat(Animation animation) {
		
	}
	
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		//在欢迎界面屏蔽BACK键
		if(keyCode==KeyEvent.KEYCODE_BACK) {
			return false;
		}
		return false;
	}
	
}
 

 动画welcome_alpha.xml

 

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
	android:interpolator="@android:anim/accelerate_interpolator">
	<alpha 
		android:fromAlpha="0.0"
		android:toAlpha="1.0"
		android:duration="2000" 
		/>
	<alpha 
		android:fromAlpha="1.0"
		android:toAlpha="0.0"
		android:startOffset="3000" //延迟3秒再开始
		android:duration="3000" 
		/>
</set>

 

布局welcome.xml

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:gravity="center_vertical|center_horizontal">
	<ImageView
	    android:id="@+id/welcome_image_view" 
	    android:layout_width="wrap_content"
   		android:layout_height="wrap_content"
   		android:src="@drawable/welcome"
	    />
</LinearLayout>
  • 大小: 6.2 KB
  • 大小: 11.5 KB
10
0
分享到:
评论
2 楼 JACKDG2010 2012-04-18  
学习学习
1 楼 shangdahao 2011-11-13  
用handler会更简单

相关推荐

    android 全屏欢迎界面 源码

    - 欢迎界面通常是一个独立的`Activity`,在`onCreate()`方法中设置布局,然后在延时任务完成后调用`finish()`方法关闭欢迎界面,启动主`Activity`。 5. **处理初始化任务** - 在欢迎界面,可以利用这段时间加载...

    Android开发 欢迎界面

    完成欢迎界面后,需要在不同设备和Android版本上进行测试,确保在各种环境下都能正常运行。同时,使用Android Studio的调试工具分析性能,确保没有内存泄漏或不必要的资源消耗。 综上所述,创建一个Android欢迎...

    Android 平移动画+缩放动画=集合动画->实现开机启动页+通过线程休眠事件跳转到主界面完整代码

    Android 平移动画+缩放动画-&gt;实现开机启动页: 1、通过集合动画+线程实现开机启动动画界面。 2、设置了休眠时间,休眠过后实现跳转MainActivity。 3、动画集合中主要有平移动画+缩放动画。 4、...

    android studio倒计时三秒欢迎页面

    总的来说,这个"android studio倒计时三秒欢迎页面"项目是一个实用的学习资源,它涵盖了Android开发中的基础概念,如线程管理、用户界面设计、倒计时逻辑以及Android Studio的使用。通过实践这个Demo,新手开发者...

    安卓动画效果相关-Android平移动画缩放动画=集合动画-实现开机启动页通过线程休眠事件跳转到主界面完整代码.rar

    通过`Thread.sleep()`方法可以让当前线程暂停指定的毫秒数,这样可以在用户看到启动页的动画效果后,再自动跳转到主界面,避免立即跳转带来的突兀感。 6. **完整代码**:提供的压缩包包含了一个完整的示例代码,...

    Android项目中的欢迎界面和引导页:动画和ViewPager

    在`SplashActivity`中,我们可以设置一个定时器,在一定时间后自动跳转到主应用界面,或者根据网络连接状态、数据初始化等条件来决定何时进入下一步。 在`SplashActivity`中,我们可以使用动画库如Android ...

    android 多线程下载demo

    这个"android多线程下载demo"展示了如何利用多线程分段下载一个APK文件,同时实现实时更新UI展示下载进度,并在下载完成后自动跳转到应用安装界面。以下是对这个Demo涉及知识点的详细解释: 1. **多线程下载**:多...

    android 欢迎界面

    - **延迟跳转**:通过Handler或CountDownTimer设置一个计时器,在特定时间后自动跳转到主界面。 - **监听初始化状态**:当后台任务完成时,立即跳转到主界面,提供无缝的用户体验。 5. **性能优化** - **减少...

    Android 8.0系统界面切换时闪屏问题

    ### Android 8.0系统界面切换时闪屏问题解析及解决方案 #### 一、问题背景与现象 在Android 8.0系统中,开发者可能会遇到一个常见问题:当应用程序进行界面切换时出现短暂的闪屏现象。这种现象不仅影响用户体验,...

    用户注册登录跳转。。

    说到界面跳转,安卓提供了多种方法,如使用Intent。当用户点击登录按钮,我们可以创建一个新的Intent,指定目标Activity(如主界面),然后调用`startActivity()`来实现跳转。如果登录失败,我们可以显示一个Toast...

    Android程序启动界面Demo

    在Android开发中,启动界面(Splash Screen)是用户打开应用时首先看到的界面,它通常包含应用程序的logo、品牌信息或者简单的动画效果,为应用程序的实际加载过程提供视觉反馈。本Demo旨在展示如何创建一个基本的...

    android引导界面

    5. 跳转逻辑:当用户完成浏览引导界面后,需要跳转到主界面。可以监听ViewPager的滑动事件,或者设置一个“开始/跳过”按钮,点击后关闭引导界面并进入应用。 三、AndyViewPager详解 "AndyViewPager"可能是一个...

    安卓音乐播放器相关-实现安卓界面间跳转和音乐播放的小程序.rar

    这个压缩包文件“安卓音乐播放器相关-实现安卓界面间跳转和音乐播放的小程序.rar”包含了一个简单的安卓应用程序,其主要目标是展示如何在不同的Android界面之间进行导航以及实现音乐播放功能。以下是对其中涉及的...

    Android 程序启动界面源码.rar

    例如,当所有加载工作完成后,使用`Intent`跳转到主Activity。 4. **延时跳转** 为了保证用户可以看到启动界面,需要设置一个适当的延迟时间来决定何时跳转。这可以通过`Handler`或者`CountDownTimer`实现。 5. *...

    Android应用源码飞碟说欢迎界面.zip

    《深入剖析Android应用源码:以飞碟说欢迎界面为例》 在移动应用开发领域,Android以其开源、灵活的特点,成为开发者们的首选平台之一。本文将深入探讨一个Android应用的源码——飞碟说欢迎界面,以此为例,帮助...

    android仿京东商场界面

    在Android开发领域,仿制大型...通过这个项目,开发者不仅可以提升Android界面设计和实现能力,还能了解到实际电商应用开发中的一些常见技术和挑战。在实践中不断学习和优化,有助于成长为一名专业的Android开发者。

    android程序启动界面

    在Android开发中,程序启动界面(Splash Screen)是用户打开应用时首先看到的屏幕,通常展示品牌标识或加载动画,同时进行一些初始化操作。本文将深入探讨如何创建和优化Android程序的启动界面。 首先,我们需要...

    Android 平移动画+缩放动画=集合动画->实现开机启动页+通过线程休眠事件跳转到主界面

    Android 平移动画+缩放动画-&gt;实现开机启动页: 1、通过集合动画+线程实现开机启动动画界面。 2、设置了休眠时间,休眠过后实现跳转MainActivity。 3、动画集合中主要有平移动画+缩放动画。 4、。。。。。

    Uber的欢迎界面

    5. **跳转控制**:根据加载完成的状态决定何时跳转到主应用界面,通常使用Handler或者Lifecycles组件来控制。 此外,为了提高性能和用户体验,UberSplash可能还采用了以下策略: 1. **延迟加载**:非关键资源在...

Global site tag (gtag.js) - Google Analytics