我正在尝试添加一个如下所示的边框: https://imgur.com/a/r8rHGQl
我的toolbar.xml:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:elevation="1dp"
app:theme="@style/AppTheme"
app:titleTextAppearance="@style/TitleText"
app:titleTextColor="@color/colorPrimaryText"
>
</android.support.v7.widget.Toolbar>
在我的java代码中我做:
toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
并夸大菜单。
如果我尝试在相对/线性/约束布局中嵌套工具栏并在底部添加一个View,我得到“android.widget.LinearLayout无法转换为android.support.v7.widget.Toolbar”错误
还尝试<include
一个内部带有View的布局,但然后该行出现在我的工具栏中间,我的标题消失了。
还包括我的menu.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/item1"
android:icon="@drawable/main_btn_info"
android:title="Item 1"
app:showAsAction="always"/>
</menu>
答案 0 :(得分:0)
制作了另一个带边框的布局并将其包含在每个活动中,我知道这不是最好的方法,但现在的结果是一样的。
答案 1 :(得分:0)
使用视图在线性布局内创建工具栏
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:elevation="1dp"
app:theme="@style/AppTheme"
app:titleTextAppearance="@style/TitleText"
app:titleTextColor="@color/colorPrimaryText"/>
<View
android:background="your border color"
android:layout_width="match_parent"
android:layout_height="2dp" />
</LinearLayout>
在所有布局中包含此内容。
然后使用工具栏ID而不是xml名称
在活动中找到工具栏toolbar = findViewById(R.id.toolbar_main);
setSupportActionBar(toolbar);