2012-07-11 94 views
7

我已經搜索過但沒有找到類似的問題,因爲我不知道如何在句子中對其進行分段。我正在使用ActionBarSherlock,它帶有一個標誌,而不是啓動器圖標(即72x72圖標),並在活動的頂部有文本。在android中的活動啓動時隱藏標題欄中的應用程序啓動器圖標

當活動首次加載時,幾分之一秒。在操作欄出現徽標前,我會看到清單中定義的啓動器圖標和標籤(如下所示)。這個家庭活動非常簡單,所以它不會做任何額外的負載,這可能會導致延遲。

<application 
    android:hardwareAccelerated="true" 
    android:icon="@drawable/launcher_icon" 
    android:label="@string/app_name" 
    android:screenOrientation="portrait" > 

    <activity 
     android:name=".SplashScreenActivity" 
     android:label="@string/app_name" 
     android:logo="@drawable/ab_logo" 
     android:theme="@android:style/Theme.Light.NoTitleBar" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

    <activity 
     android:name=".HomeActivity" 
     android:label="@string/homeitle" 
     android:logo="@drawable/ab_logo" 
     android:theme="@style/MyTheme" > 
    </activity> 

</application> 

我可以讓文本「消失」的造型使其成爲顏色作爲背景一樣,但我不能找到一種方法來刪除/隱藏該活動的啓動器圖標。

我已經設置了一個啓動畫面活動(如上面的清單),它只是加載我的家庭活動發生問題。這確實有幫助,但有時在加載活動時仍然會出現問題。

public class SplashScreenActivity extends Activity 
{ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
    } 

    @Override 
    public void onResume() 
    { 
     super.onResume(); 
     Intent i = new Intent(getBaseContext(), HomeActivity.class); 
     startActivity(i); 
     finish(); 
    } 
} 

有誰知道的方法來隱藏啓動器圖標&標題標籤,所以它不前ActionBarSherlock顯示顯示?理想情況下,不需要啓動屏幕,因爲有幾種訪問活動的方法可以避免上面顯示的閃屏。

---更新我的主題文件----

<style name="MyTheme" parent="Theme.Sherlock.ForceOverflow"> 
    <item name="android:windowBackground">@color/white</item> 
    <item name="android:actionBarStyle">@style/MyTheme.ActionBar</item> 
    <item name="android:actionMenuTextColor">@color/white</item> 
    <item name="actionBarStyle">@style/MyTheme.ActionBar</item> 
    <item name="actionMenuTextColor">@color/white</item> 
</style> 

<style name="MyTheme.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse"> 
    <item name="android:background">@color/blue</item> 
    <item name="android:titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item> 
    <item name="android:displayOptions">showHome|useLogo</item> 
    <item name="displayOptions">showHome|useLogo</item> 
    <item name="background">@color/blue</item> 
    <item name="titleTextStyle"> @style/MyTheme.ActionBar.TitleTextStyle</item> 
</style> 

<style name="MyTheme.ActionBar.TitleTextStyle" parent="@android:style/TextAppearance"> 
    <item name="android:textColor">@color/blue</item> 
</style> 

回答

10

加入圖標的風格,這是一樣的標誌固定它。這會覆蓋啓動器圖標。

<style name="MyTheme.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse"> 
     <item name="android:background">@color/infostop_blue</item> 
     <item name="android:titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item> 
     <item name="android:displayOptions">showHome|useLogo</item> 
     <item name="displayOptions">showHome|useLogo</item> 
     <item name="android:icon">@drawable/ab_logo</item> 
     <item name="icon">@drawable/ab_logo</item> 
     <item name="background">@color/blue</item> 
     <item name="titleTextStyle"> @style/MyTheme.ActionBar.TitleTextStyle</item> 
    </style> 
+0

這真的很難找到你的問題,我很高興我做到了,因爲你的答案有效。 :) – 2013-08-09 22:19:03

相關問題