19

Tôi đang cố gắng tìm ra cách ẩn thanh tác vụ cho hoạt động màn hình giật gân. Tôi đã làm điều gì đó ẩn thanh tác vụ trên màn hình giật gân, nhưng có một vấn đề: trước khi màn hình splash xuất hiện, có hoạt động với thanh tác vụ xuất hiện trong thời gian ngắn ... và tôi không biết cách giấu nó đi!ứng dụng màn hình giật gân và ẩn thanh tác vụ

Màn hình giật gân của tôi chỉ xuất hiện khi chúng tôi chạm vào ứng dụng lần đầu tiên như giới thiệu ứng dụng.

Code:

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(); 
} 

} 

Manifest:

<?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> 
+0

@rciovati tôi sẽ thứ hai quan điểm này. Nếu bạn lần đầu tiên đặt nó trong bố trí để không có mặt thì bạn sẽ không có vấn đề về những gì bạn âm thanh được mô tả như là một nhấp nháy. –

+0

đăng Manifest – Blackbelt

+0

tôi đã thêm bản kê khai của mình :) – Damiii

Trả lời

45

lý do tại sao không thêm vào biểu hiện chủ đề của hoạt động đầu tiên để loại trừ thanh tác vụ và thậm chí là thanh thông báo?

cái gì đó như:

<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> 
... 

BTW, lý do bạn có thanh hành động là bởi vì bạn đã thiết lập các chủ đề mặc định để có nó, trong thẻ ứng dụng, do đó, nó không phải là một hoạt động trước bạn, nó thực sự hoạt động giật gân của riêng bạn.

+1

Nó hoạt động! Cảm ơn bạn ! "android: theme =" @ android: style/Theme.NoTitleBar.Toàn màn hình " Vì vậy," android: Theme.Holo "từ Android, sẽ đặt thanh hành động cho mỗi hoạt động. Ok! :) – Damiii

+0

có và nếu bạn muốn hỗ trợ thêm thanh tác vụ vào phiên bản Android cũ (bánh gừng và dưới đây), bạn có thể sử dụng thư viện ActionBarSherlock, nhưng cũng sử dụng phong cách và lớp học của họ, tất nhiên là –

+0

ok! :) Cảm ơn bạn rất nhiều! :) – Damiii

2

Bạn đang có vấn đề là những dòng

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

Họ không cần thiết như không nên có ActionBar gọi ở tất cả , màn hình giật gân không sử dụng và phải là hoàn toàn riêng biệt Activity tha n người khác của bạn.

Bạn cần hai Activities. Một cho màn hình Splash với bố trí riêng của nó. Thứ 2 là dành cho chính Activity, mà có thể là một màn hình đăng nhập hay màn hình chào mừng, vv

các splash lớp màn hình sẽ giống như thế này

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 File

<?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> 

Bây giờ số Activity thứ hai có bố cục với ActionBar v.v.

+0

Tôi đã làm những gì bạn đã làm và làm điều tương tự ... Tôi đã chạm vào ứng dụng của mình và hoạt động xuất hiện trong một thời gian ngắn (nửa giây) với thanh tác vụ và sau khi màn hình splash xuất hiện: f – Damiii

+0

Điều này có xảy ra trên thiết bị thực tế hoặc 'AVD' không? –

+0

Tôi đang làm điều đó với samsung galaxy s4 – Damiii

3

nếu xây dựng của bạn mục tiêu sdk 5.0 trở lên (AppTheme phong cách là 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> 
Các vấn đề liên quan