• Android启动画面实现


    每个Android应用程序启动之后都会出现一个Splash启动界面,显示产品LOGO、公司LOGO或者开发者信息。如果应用程序启动时间比较长,那么启动界面就是一个很好的东西,可以让用户耐心等待这段枯燥的时间,提高用户体验。

    1.splash.xml布局文件

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".SplashActivity" >
    
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/welcome_android"
            android:scaleType="fitCenter" />
    
    </RelativeLayout>
    

    2.SplashActivity类,使用Handler的postDelayed方法,3秒后执行跳转到主视图

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    package cn.eoe.leigo.splash;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.os.Handler;
    
    /**
     * 
     * @{#} SplashActivity.java Create on 2013-5-2 下午9:10:01    
     *    
     * class desc:   启动画面
     *
     * <p>Copyright: Copyright(c) 2013 </p> 
     * @Version 1.0
     * @Author <a href="mailto:gaolei_xj@163.com">Leo</a>   
     *  
     *
     */
    public class SplashActivity extends Activity {
    
        //延迟3秒 
        private static final long SPLASH_DELAY_MILLIS = 3000;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.splash);
    
            // 使用Handler的postDelayed方法,3秒后执行跳转到MainActivity 
            new Handler().postDelayed(new Runnable() {
                public void run() {
                    goHome();
                }
            }, SPLASH_DELAY_MILLIS);
        }
    
        private void goHome() {
            Intent intent = new Intent(SplashActivity.this, MainActivity.class);
            SplashActivity.this.startActivity(intent);
            SplashActivity.this.finish();
        }
    }
    

    3.配置AndroidManifest.xml

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="cn.eoe.leigo.splash"
        android:versionCode="1"
        android:versionName="1.0" >
    
        <uses-sdk
            android:minSdkVersion="10"
            android:targetSdkVersion="10" />
    
        <application
            android:icon="@drawable/logo"
            android:label="@string/app_name" >
            <activity
                android:name=".SplashActivity"
                android:configChanges="keyboardHidden"
                android:label="@string/app_name"
                android:launchMode="singleTask"
                android:screenOrientation="portrait"
                android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity android:name=".MainActivity" />
        </application>
    
    </manifest>
  • 相关阅读:
    小程序 生成二维码
    uni-app调用wifi接口
    微信小程序代码上传,审核发布小程序
    uni-app开发经验分享十五: uni-app 蓝牙打印功能
    面试题 16.11. 跳水板
    LeetCode 63. 不同路径 II
    LeetCode 44. 通配符匹配
    LeetCode 108. 将有序数组转换为二叉搜索树
    LeetCode 718. 最长重复子数组
    LeetCode 814. 二叉树剪枝
  • 原文地址:https://www.cnblogs.com/tdalcn/p/3491920.html
Copyright © 2020-2023  润新知