我搜索过但没有找到类似的问题,因为我不确定如何在一个句子中进行分析。我正在使用ActionBarSherlock,带有徽标而不是启动器图标(即72x72图标),文本位于活动的上角。
当活动第一次加载时,只需几分之一秒。在带有徽标的操作栏出现之前,我会看到清单中定义的启动器图标和标签(如下所示)。这个家庭活动非常简单,所以它没有做任何可能导致延迟的额外装载。
<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();
}
}
有没有人知道隐藏启动器图标的方法&amp;标题标签,以便在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>
答案 0 :(得分: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>