如何创建android游戏加载界面



当你启动android应用程序时,主活动以白色背景和黑色标题开始,你的应用程序名称在左上角。这样的

如何完全删除这个(当应用程序开始不显示这个),并添加自定义加载进度条或一些标志到屏幕上?

如何创建一个包含进度条的自定义布局的启动对话框?

在你的主活动中做这样的事情

private SplashDialog mSplashDialog;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    showSplashScreen();
    setContentView(R.layout.yourmainlayout);        
}
protected void removeSplashScreen() {
    if (mSplashDialog != null) {
        mSplashDialog.dismiss();
        mSplashDialog = null;
    }
}
protected void showSplashScreen() {
    mSplashDialog = new SplashDialog(this, R.style.splash_dialog);
    mSplashDialog.setCancelable(false);
    mSplashDialog.show();
}

创建定制对话框

public class SplashDialog extends Dialog {
    private ProgressBar mProgressBar;
    public SplashDialog(Context context, int theme) {
        super(context, theme);
        setContentView(R.layout.splash_dialog);
        mProgressBar = (ProgressBar) findViewById(R.id.splash_progress);
    }
    public void setProgress(int progress) {
        mProgressBar.setProgress(progress);
    }
}

并添加样式,让对话框填充整个屏幕。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="splash_dialog">
        <item name="android:padding">0dp</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowFrame">@null</item>
    </style>
</resources>

要更改对话框的进度值,请调用mSplashDialog.setProgress(int progress)

当你的数据加载时调用removeSplashScreen()

我想你在这里可以找到你想要的东西:

如何改变闪屏

我的工作(因为我没有太多的加载开始实际上我根本不需要启动屏幕)是改变res/values/styles.xml:

<resources>
<color name="custom_theme_color">#000000</color>
<style name="AppTheme" parent="android:Theme.Light" >
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@color/custom_theme_color</item>
</style>
</resources>

它只是开始黑屏切换到全屏(1-2秒后),当它全部加载。看起来很"专业"。

最新更新