启动屏幕应用程序并隐藏操作栏

我想弄清楚如何隐藏启animation面活动的操作栏。 我做了一些在我的启animation面上隐藏了我的动作栏,但有一个问题:在我的启animation面出现之前,就像一个活动,带有一个短暂的动作栏…我不知道如何隐藏它!

我的启animation面仅在我们第一次触摸应用程序时才会显示,就像应用程序的介绍一样。

代码:

package com.example.basicmaponline; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Window; public class Intro extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); getWindow().requestFeature(Window.FEATURE_ACTION_BAR); getActionBar().hide(); setContentView(R.layout.intro); Thread timer = new Thread(){ public void run(){ try{ sleep(3000); }catch (InterruptedException e) { e.printStackTrace(); }finally{ Intent openMenu = new Intent("com.example.basicmaponline.MENU"); startActivity(openMenu); } } }; timer.start(); } @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); finish(); } } 

清单:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.basicmaponline" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="11" android:targetSdkVersion="17" /> <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_GPS"></uses-permission> <application android:allowBackup="true" android:icon="@drawable/lojacidadao" android:label="@string/app_name" android:theme="@style/AppTheme"> <activity android:name="com.example.basicmaponline.Intro" android:screenOrientation="portrait" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Menu" android:screenOrientation="portrait" android:label="@string/app_name"> <intent-filter> <action android:name="com.example.basicmaponline.MENU" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Mapa" android:screenOrientation="portrait" android:label="@string/map_name"> <intent-filter> <action android:name="com.example.basicmaponline.MAPA" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Lojas" android:screenOrientation="portrait" android:label="@string/lojas_name"> <intent-filter> <action android:name="com.example.basicmaponline.LOJAS" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.InfoLoja" android:screenOrientation="portrait" android:label="@string/loja_name"> <intent-filter> <action android:name="com.example.basicmaponline.INFOLOJA" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Balcoes" android:screenOrientation="portrait" android:label="@string/balcoes_name" > <intent-filter> <action android:name="com.example.basicmaponline.BALCOES" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Entidade" android:screenOrientation="portrait" android:label="@string/balcao_name"> <intent-filter> <action android:name="com.example.basicmaponline.ENTIDADE" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Servicos" android:screenOrientation="portrait" android:label="@string/servicos_name"> <intent-filter> <action android:name="com.example.basicmaponline.SERVICOS" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.InfoServico" android:screenOrientation="portrait" android:label="@string/servico_name"> <intent-filter> <action android:name="com.example.basicmaponline.INFOSERVICO" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name="com.example.basicmaponline.Pesquisar" android:screenOrientation="portrait" android:label="@string/pesquisa_name" > <intent-filter> <action android:name="com.example.basicmaponline.PESQUISAR" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> </application> </manifest> 

Solutions Collecting From Web of "启动屏幕应用程序并隐藏操作栏"

为什么不添加到清单的第一个活动的主题排除行动栏,甚至可能是通知栏?

就像是:

 <application android:allowBackup="true" android:icon="@drawable/lojacidadao" android:label="@string/app_name" android:theme="@style/AppTheme"> <activity android:name="com.example.basicmaponline.Intro" android:screenOrientation="portrait" android:label="@string/app_name" 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> ... 

顺便说一句,你有操作栏的原因是因为你已经设置了默认的主题,在应用程序标签中,所以它不是在你之前的活动,这实际上是你自己的飞溅活动。

如果您的构build目标sdk 5.0或以上(AppTheme风格是Theme.AppCompat.Light.DarkActionBar。)

 <activity android:name=".Splash" android:label="@string/app_name" android:theme="@style/Theme.AppCompat.Light.NoActionBar"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

你是这些行的问题

 getWindow().requestFeature(Window.FEATURE_ACTION_BAR); getActionBar().hide(); 

他们不需要,因为不应该有任何的ActionBar调用,启animation面不使用一个,应该是一个完全独立的Activity比其他人。

你需要两个Activities 。 一个用于自己的布局的Splash Screen。 第二个是主要Activity ,可以是login屏幕或欢迎屏幕等。

闪屏类应该看起来像这样

 public class SplashScreen extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.yourlayoutfile); Thread loading = new Thread() { public void run() { try { sleep(5000); Intent main = new Intent(SplashScreen.this, Main.class); startActivity(main); } catch (Exception e) { e.printStackTrace(); } finally { finish(); } } }; loading.start(); } } 

XML文件

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical" tools:context=".SplashScreen" > // if not using an image replace with whatever is to be shown on the splash screen <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/logo" /> </LinearLayout> 

现在第二个Activity有与ActionBar等布局