我正在浏览Holo.Light
主题,但似乎找不到要覆盖的魔术样式来摆脱在我的应用程序首次启动时短暂显示的标题文本。
我怎样才能做到这一点?
我正在浏览Holo.Light
主题,但似乎找不到要覆盖的魔术样式来摆脱在我的应用程序首次启动时短暂显示的标题文本。
我怎样才能做到这一点?
Answers:
尝试:
getActionBar().setDisplayShowTitleEnabled(false);
对于v.7:
getSupportActionBar().setDisplayShowTitleEnabled(false);
我认为这是正确的答案:
<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
</style>
<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
<item name="android:displayOptions">showHome|useLogo</item>
<item name="displayOptions">showHome|useLogo</item>
</style>
Widget.Sherlock.Light.ActionBar.Solid.Inverse
。我应该使用哪个父母?
我是Android的新手,所以如果我错了,请更正我,但是我认为,如果您决定使用操作栏上的导航选项卡,它们似乎并没有完全对齐,因为标题文本颜色只是透明的并且没有没了。
<style name="CustomActionBarStyle" parent="@android:style/Widget.Holo.ActionBar">
<item name="android:displayOptions">useLogo|showHome</item>
</style>
为我工作。
得到它了。你必须重写
android:actionBarStyle
然后您必须以自定义样式覆盖
android:titleTextStyle
这是一个样本。
在我的themes.xml中:
<style name="CustomActionBar" parent="android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/CustomActionBarStyle</item>
</style>
在我的styles.xml中:
<style name="CustomActionBarStyle" parent="android:style/Widget.Holo.ActionBar">
<item name="android:titleTextStyle">@style/NoTitleText</item>
<item name="android:subtitleTextStyle">@style/NoTitleText</item>
</style>
<style name="NoTitleText">
<item name="android:textSize">0sp</item>
<item name="android:textColor">#00000000</item>
</style>
我不确定为什么将textSize设置为零并不能解决问题(它缩小了文本,但并没有消除它),而是将textColor设置为透明。
android:visibility=gone
无效吗?还是更好,为什么setDisplayShowTitleEnabled
在栏加载时仍显示标题文本?
在您的清单中
<activity android:name=".ActivityHere"
android:label="">
将此语句写在
setContentView(R.layout.activity_main);
getSupportActionBar().setDisplayShowTitleEnabled(false);
如果扩展AppCompactActivity使用,getSupportActionbar()
如果扩展Activity使用getActionBar()
,则可能会给
null pointer exception
使用 android:label=""
in AndroidManifest.xml
进行活动也可以,但是您的应用不会出现在Recently used apps
我在应用清单中使用此代码
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:logo="@drawable/logo2"
android:label="@string/title_text"
android:theme="@style/Theme.Zinoostyle" >
我的徽标文件是200 * 800像素,并在main activity.java中使用此代码
getActionBar().setDisplayShowTitleEnabled(false);
它会正确地工作
您可以更改应用于每个活动的样式,或者如果您只想更改特定活动的行为,则可以尝试以下操作:
setDisplayOptions(int options, int mask) --- Set selected display
or
setDisplayOptions(int options) --- Set display options.
要在操作栏上显示标题,请在onCreate()中设置显示选项
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE, ActionBar.DISPLAY_SHOW_TITLE);
隐藏操作栏上的标题。
getSupportActionBar().setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE);
详细信息在这里。
唯一对我有用的是添加:
<activity
android:name=".ActivityHere"
android:label=""
>
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().hide();
希望这会有所帮助
尽管所有这些都可以接受,但是如果您的活动仅包含一个主要活动,则可以res\values\styles.xml
像这样进行编辑:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
</resources>
我已经parent
从Android Studios Create Blank Application
向导更新了.NoActionBar属性并将其添加到Light主题。
ActionBar actionBar = getActionBar();
actionBar.setTitle("");