黑马程序员技术交流社区
标题: Android技术分享,开源中国源码分析——启动界面 [打印本页]
作者: 张然龙 时间: 2014-7-30 13:16
标题: Android技术分享,开源中国源码分析——启动界面
android手机上的很多应用程序启动时都会先显示一个图片,作为该应用程序的开始,该图片转瞬即逝。这个图片一般都会用应用的图标,作为广告来用。

它的实现方式很简单,我们已开源中国软件为例,介绍它的实现。
这个图片其实用的是一个Activity,对于开源中国应用程序来说是AppStart这个Activity类。
上这个类的源码:
- /**
- * 应用程序启动类:显示欢迎界面并跳转到主界面
- * <a href="http://my.oschina.net/arthor" target="_blank" rel="nofollow">@author</a> liux (http://my.oschina.net/liux)
- * @version 1.0
- * @created 2012-3-21
- */
- public class AppStart extends Activity {
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- final View view = View.inflate(this, R.layout.start, null);
- setContentView(view);
-
- //渐变展示启动屏
- AlphaAnimation aa = new AlphaAnimation(0.3f,1.0f);
- aa.setDuration(2000);
- view.startAnimation(aa);
- aa.setAnimationListener(new AnimationListener()
- {
- @Override
- public void onAnimationEnd(Animation arg0) {
- redirectTo();
- }
- @Override
- public void onAnimationRepeat(Animation animation) {}
- @Override
- public void onAnimationStart(Animation animation) {}
-
- });
-
- //兼容低版本cookie(1.5版本以下,包括1.5.0,1.5.1)
- AppContext appContext = (AppContext)getApplication();
- String cookie = appContext.getProperty("cookie");
- if(StringUtils.isEmpty(cookie)) {
- String cookie_name = appContext.getProperty("cookie_name");
- String cookie_value = appContext.getProperty("cookie_value");
- if(!StringUtils.isEmpty(cookie_name) && !StringUtils.isEmpty(cookie_value)) {
- cookie = cookie_name + "=" + cookie_value;
- appContext.setProperty("cookie", cookie);
- appContext.removeProperty("cookie_domain","cookie_name","cookie_value","cookie_version","cookie_path");
- }
- }
- }
-
- /**
- * 跳转到...
- */
- private void redirectTo(){
- Intent intent = new Intent(this, Main.class);
- startActivity(intent);
- finish();
- }
复制代码
这个Activity启动后,会通过动画的形式跳转到真正的应用程序主页面,也就是Main这个Activity类。
作者: doctorsoft 时间: 2015-3-19 13:38
谢谢分享
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |