android - 自定义 support.v7.widget.Toolbar 未在设备上显示

标签 android android-layout android-activity

如果我理解正确,这个小部件的目的是使工具栏与旧版本的 android(如 4.x)兼容,但由于某些原因,当我在使用 android 4.x 的实际设备上运行我的应用程序时,我没有看到我的工具栏。在 Android 6 模拟器中,一切正常。

我在我的主题中使用了 @style/Theme.AppCompat.Light.NoActionBar 并且我的 Activity 扩展了 AppCompatActivity

这是我的工具栏的样子:

<android.support.v7.widget.Toolbar
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/my_toolbar"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:background="?attr/colorPrimary"
  android:elevation="4dp"
  android:theme="@style/ThemeOverlay.AppCompat.ActionBar">

包含在我的 Activity xml 中:

<include
    android:id="@+id/tool_bar"
    layout="@layout/actionbar_main"></include>

并在创建时添加到 Activity 代码中:

toolbar = (Toolbar) findViewById(R.id.tool_bar);
this.setSupportActionBar(toolbar);

有什么提示为什么这在 android 4.x 上不显示吗?

最佳答案

请试试这个。

将您的 XML 布局更改为。

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context=".HomeActivity">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/tool_bar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>

关于android - 自定义 support.v7.widget.Toolbar 未在设备上显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33535058/

相关文章:

java - 如何为父容器和所有子容器添加一键式监听器?

android - 如何使用 Delphi XE5 从私有(private)目录在 Android 上播放视频文件

android - 如何让这段用 RxKotlin 编写的代码块更干净,避免阻塞线程?

android - 您应该选择什么构建目标和最低 SDK 版本?

android - 在 build.gradle 中有条件地定义 resValue

android - 将应用程序部署到设备后如何启动另一个 Activity 作为主要 Activity 和启动程序

Android Studio - android :id 处的多个实现问题

android - 如何找到比例以在尺寸文件夹中保持不同的尺寸

android - 多 Activity 应用程序退出

android - 如何完成当前 Activity 并启动新的 Activity 接收方式?