Android工具栏(作为小部件)未显示标题
我正在使用Toolbar
作为底部工作表中的小部件。但标题没有显示。Android工具栏(作为小部件)未显示标题
我Toolbar
在bottomsheet布局的内容是这样的:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:title="This is my title"
app:theme="@style/ThemeOverlay.AppCompat.Light"
app:popupTheme="@style/AppTheme.PopupOverlay">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:background="?attr/selectableItemBackgroundBorderless"
android:onClick="@{() -> handler.hideBottomSheet()}"
android:src="@drawable/ic_keyboard_arrow_down_black_24dp" />
</android.support.v7.widget.Toolbar>
//...
</LinearLayout>
一切看起来都不错。但标题并不只是显示出来。这不是支持ActionBar
。我使用这个作为一个部件。
我不知道为什么,但它只是不显示。我尝试了不同的主题,并且改变了根目录LinearLayout
的背景颜色,但没有运气。
它只是不显示。我也试过设置android:titleTextColor
,但那也没有奏效。
仅当使用ActionBar
时才可以使用标题?或者我在这里做错了什么?谢谢。
正如文件从支持库
通知
使用XML属性说明即showAsAction属性上面使用标签中定义的自定义命名空间 。当使用由支持库定义的任何XML属性 时,这是必需的,因为旧设备上的Android框架中不存在 。因此,您必须使用自己的 名称空间作为由支持 库定义的所有属性的前缀。
您需要使用自定义前缀。因此,如下使用app:title
代替android:title
。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
app:title="This is my title"
app:theme="@style/ThemeOverlay.AppCompat.Light"
app:popupTheme="@style/AppTheme.PopupOverlay">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:background="?attr/selectableItemBackgroundBorderless"
android:onClick="@{() -> handler.hideBottomSheet()}"
android:src="@drawable/ic_keyboard_arrow_down_black_24dp" />
</android.support.v7.widget.Toolbar>
灿标题只使用作为动作条时使用?
这是没有必要的。你可以得到toolbar name
而不将其设置为actionbar
试试这个代码
mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);
mActionBarToolbar.setTitle("");
setSupportActionBar(mActionBarToolbar);
现在你可以设置你的标题
mActionBarToolbar.setTitle(title);
我不使用这个作为操作栏。我在底部使用 – kirtan403
pz发布你的java代码 –
Java代码的哪个部分? – kirtan403
用工具栏替换动作条... –