具有自定义视图的工具栏标题

Ste*_*hen 6 android toolbar android-5.0-lollipop

我试图在工具栏中使用setTitle和自定义视图显示标题.

我不把它当作动作栏,而只是视图.

我在Java中添加标题和自定义视图

 toolbar = (Toolbar) view.findViewById(R.id.toolbar);

    if (title != null) {
        toolbar.setTitle(title);
        toolbar.setTitleTextColor(getResources().getColor(android.R.color.white));
    }

    if (subtitle != null) {
        toolbar.setSubtitle(subtitle);
        toolbar.setSubtitleTextColor(getResources().getColor(android.R.color.white));
    }

    // Add switch view to toolbar
    View switchView = LayoutInflater.from(getActivity())
            .inflate(R.layout.device_list_switch, null);
    toolbar.addView(switchView);
Run Code Online (Sandbox Code Playgroud)

我的交换机视图的xml是

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/holo_blue_bright">


<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/discoverable"
    android:layout_alignParentBottom="true"
    android:layout_alignTop="@+id/discoverable"
    android:layout_toLeftOf="@+id/discoverable"
    android:layout_toStartOf="@+id/discoverable"
    android:gravity="center"
    android:text="@string/discoverable_switch_label"
    android:textColor="@android:color/white"
    />

<Switch
    android:id="@+id/discoverable"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentRight="true"
    android:layout_marginLeft="@dimen/discoverable_switch_margin_left"
    android:layout_marginStart="@dimen/discoverable_switch_margin_left"/>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

会发生的是RelativeLayout填充整个工具栏区域并且标题不可见.

有任何想法吗?

Mik*_*Dev -2

如果您不使用工具栏作为操作栏,那么也许您可以只使用布局。

我使用 LinearLayout 而不是工具栏。

Toolbar 给您带来什么优势?