我开始开发一个新的应用程序,我很乐意给它一个材料设计外观.为此,我使用v7支持兼容性.
在应用程序的一些活动中,我需要工具栏不显示应用程序标题,我不知道如何,但它默认显示.在这些活动中,我在工具栏的右侧有一个文本视图,就像一个按钮,我已经实现了traex的RippleEffect.
所以,基本上我的问题是,如何从工具栏隐藏应用程序的标题?因为即使我做:
toolbar.setTitle("");
要么
toolbar.setTitle(null);
它继续出现.
这是我的代码:
自定义工具栏xml [toolbar_intro.xml]:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:local="http://schemas.android.com/apk/res-auto" xmlns:ripple="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/tools" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="?attr/actionBarSize" android:background="?attr/colorPrimary" android:elevation="4dp" local:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" local:popupTheme="@style/ThemeOverlay.AppCompat.Light"> <com.andexert.library.RippleView android:id="@+id/more" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_gravity="right" android:layout_marginRight="40dp" ripple:rv_centered="false" app:rv_rippleDuration="1"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/toolbar_text" android:textColor="@color/White" android:textStyle="bold" android:textSize="25sp" android:text="Next"/> </com.andexert.library.RippleView> </android.support.v7.widget.Toolbar>
这是我如何在布局中包含工具栏:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <include android:id="@+id/toolbar" layout="@layout/toolbar_intro" /> <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content"> <ImageView ... </RelativeLayout> </LinearLayout>
这是活动:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.intro_wellcome); toolbar= (Toolbar) findViewById(R.id.toolbar); if (toolbar != null) { setSupportActionBar(toolbar); toolbar.setTitle(""); } TextView toolbar_text = (TextView) toolbar.findViewById(R.id.toolbar_text); toolbar_text.setText(R.string.next); ... }
此外,这是我实现的风格:
<style name="MaterialTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
解决方法
使用
getSupportActionBar().setDisplayShowTitleEnabled(false);