你要么有一个透明的背景或没有。意味着应用程序背景在启动和停止时是透明的。
正如你希望你的背景在开始时是透明的,但现在不再了,你可以创建一个仅仅是透明的(初始)fill_parent
矩形并具有普通主题的(初始)屏幕。
对此有一点评论。即使在应用程序启动期间看到主屏幕,任何点击和触摸都将被路由到您的应用程序。用户可能会困惑,他/她仍然看到主屏幕但不能使用它。此外,他/她可能会因为启动应用程序而感到困惑,但似乎没有任何反应。
编辑:这个想法是,创建一个单独的布局,只有一个透明的背景,当应用程序启动时,使用此布局之前,实际的应用程序与其布局开始。这就像一个闪屏但透明。
下面是一些代码来说明。
首先,飞溅的布局:
<?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:orientation="vertical"
android:background="#00000000" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:text="Starting..."
android:background="#FF000000"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
然后闪活动:
public class Splash extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
}
@Override
protected void onPostResume() {
super.onPostResume();
startActivity(new Intent(this, YOUR_ACTUAL_ACTIVITY.class));
finish();
}
}
测试你可能想添加一些等待你开始实际应用活动,看到启动前一会儿。
你打开一个活动,然后开始另一个活动?你看到的黑屏是由你的应用程序中的东西绘制的。 –