为什么应用名称显示在工具栏上?

时间:2016-12-27 06:35:51

标签: android android-toolbar grid-layout

please check the image that shows the displayed output我创建了一个片段类,并在其xml布局中添加了一个工具栏,其中包含一些文本。但由于某些原因,应用程序名称也显示在那里。我也使用相同的代码创建了其他页面,但名称仅显示在此页面上。

这是我的xml代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto">

<android.support.v7.widget.Toolbar
    android:id="@+id/my_toolbar1"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:elevation="4dp"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

    <TextView
        android:text="Recharges"
        android:textAppearance="@style/Base.TextAppearance.AppCompat.Large"
        android:textColor="#ffffff"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/textView1"
        android:layout_weight="1" />

</android.support.v7.widget.Toolbar>


<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:srcCompat="@drawable/logo"
    android:id="@+id/imageView3" />

<GridLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:columnCount="2"
    android:rowCount="5">



    <ImageView
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_marginTop="25dp"
        android:layout_marginRight="10dp"
        android:layout_row="1"
        android:layout_column="0"
        app:srcCompat="@drawable/mobile"
        android:id="@+id/imageView4" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_row="1"
        android:gravity="center"
        android:layout_column="1"
        android:layout_marginTop="30dp"
        android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
        android:text="Mobile"/>

    <ImageView
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_marginTop="25dp"
        android:layout_row="2"
        android:layout_column="0"
        app:srcCompat="@drawable/tv"
        android:id="@+id/imageView" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_row="2"
        android:layout_column="1"
        android:layout_marginTop="30dp"
        android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
        android:text="DTH"/>

    <ImageView
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_marginTop="25dp"
        android:layout_row="3"
        android:layout_column="0"
        app:srcCompat="@drawable/data"
        android:id="@+id/imageView8" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_row="3"
        android:layout_column="1"
        android:layout_marginTop="30dp"
        android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
        android:text="DataCard"/>

        />




</GridLayout>

3 个答案:

答案 0 :(得分:0)

为了节省时间而不是在每个活动oncreate()中添加一些代码,您可以为 AndroidManifest.xml 中的每个活动添加标签,它将自动添加到工具栏中。例如:

<activity
        android:name="com.example.Activity"
        android:label="@string/app_name"
        android:screenOrientation="landscape"/>

答案 1 :(得分:0)

试试这个:

fragment

 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    // Inflate the layout resource that'll be returned
    View rootView = inflater.inflate(R.layout.fragment_home, container, false);
    mToolbar = (Toolbar) rootView.findViewById(R.id.my_toolbar1);
    if (mToolbar != null) {
       ((AppCompatActivity)getActivity()).setSupportActionBar(mToolbar);
    }
    mToolbar.setTitle("Text Title");

    return rootView;
}

答案 2 :(得分:0)

在你的代码中 - android:theme="@style/ThemeOverlay.AppCompat.ActionBar"

将以上行更改为:

app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"

然后标题将以白色显示。

用这个替换工具栏代码:

<android.support.v7.widget.Toolbar
    android:id="@+id/my_toolbar1"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:elevation="4dp"
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

在Java中:

final Toolbar toolbar = (Toolbar) view.findViewById(R.id.my_toolbar1);
toolbar.setTitle("Recharges");