为了账号安全,请及时绑定邮箱和手机立即绑定

Android 设置欢迎界面

标签:
Android

相信你已经见过很多 APP 启动时都会使用一张图片作为背景,比如微信的启动界面:
微信启动界面

这样做的目的主要是展示应用进入动画的同时方便后台加载内容。
相比让用户看着空荡荡的屏幕,准备一些图片无疑会更能吸引他们的注意力。
我将教你如何用最简单的方式去实现这个效果。


首先设计一个布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/launch"
    android:orientation="vertical">
</LinearLayout>

通常只需要一张图片,越简单,越清晰,越好

然后创建一个活动

public class LaunchActivity extends Activity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_launch);       //加载启动图片
        new Thread(new Runnable() {     //开启子线程,后台处理耗时任务
            public void run() {
                /* 这里运行耗时任务,比如加载网络数据 */
                runOnUiThread(new Runnable() {          //返回主线程(UI线程)
                    public void run() {
                        Intent intent = new Intent(LaunchActivity.this, MainActivity.class);
                        startActivity(intent);          //跳转至 MainActivity
                        LaunchActivity.this.finish();   //结束当前的 Activity

                    }
                });
            }
        }).start();
    }
}

以这种方式产生的启动界面,会在后台任务处理完成后自动结束,适合数据的加载

public class LaunchActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //加载启动界面
        setContentView(R.layout.activity_launch);
        Handler handler = new Handler();
        //当计时结束时,跳转至主界面
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                startActivity(new Intent(LaunchActivity.this, MainActivity.class));
                LaunchActivity.this.finish();
            }
        }, 3000);   //持续时间为3秒
    }
}

以这种方式产生的启动界面,持续时间是稳定的,通常用于放置广告

最后对活动进行注册

    <application
        . . . >
        <activity android:name=".LaunchActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".MainActivity">
        </activity>
    </application>

将 LaunchActivity 作为首先启动的活动,展示启动图片
将所有用到的 Activity 都在 AndroidManifest 中进行注册

动手试一试,说不定你的应用,气质就大不相同了呢。

点击查看更多内容
19人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消