【发布时间】:2016-03-29 09:12:31
【问题描述】:
这是一个简短的问题:
我知道你可以通过 XML 创建一个带有指定主题的工具栏,例如 (link):
<android.support.v7.widget.Toolbar
android:id="@+id/..."
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:title="@string/..."/>
在我的例子中,在运行时,应用程序的某些内容可以是白色或深色。
是否可以在运行时将(支持库的)工具栏的主题设置为具有特定主题?
是否至少可以将里面的项目设置为具有正确的选择器和item-tint-color,以便按下它们仍然会有可见的效果(将背景颜色更改为白色,当它很暗时, 使效果不可见)?
【问题讨论】:
-
是的,您可以在运行时更改工具栏的颜色 Toolbar toolbar = (Toolbar) (getActivity()).findViewById(R.id.toolbar); toolbar.setBackgroundColor(Color.parseColor("想要的颜色"));
-
@RakshitNawani 这个我已经做过了,但是标题、项目、溢出项目、选择器……都在一个主题中。我更改了背景和标题文本颜色,但项目看起来不太好。我想我应该使用 ViewStub,并在需要时决定要扩展哪个工具栏,但如果有更好的方法,我想知道它。
-
我将很快发布一个答案,说明我为在不同的片段中显示工具栏的文本颜色、菜单选项和工具栏中的按钮所做的工作
标签: android android-support-library android-toolbar android-theme