如何以编程方式应用主题?

时间:2018-05-31 14:04:52

标签: android android-actionbar android-actionbar-compat

在XML中,我的操作栏创建如下:

<android.support.v7.widget.Toolbar
    android:id="@+id/myactivity_toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:elevation="4dp"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> 

现在我尝试以编程方式创建操作栏,但我很难找到如何应用该样式。我尝试过以下方法:

android.support.v7.widget.Toolbar actionBar = new android.support.v7.widget.Toolbar(getContext());  
TypedValue typedValue = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.style.ThemeOverlay_AppCompat_ActionBar, typedValue, true);
actionBar.setTheme(typedValue.data);    

不幸的是,这会导致&#34;找不到符号&#34; ThemeOverlay_AppCompat_ActionBar上的错误。

我有什么想法可以解决这个问题?

0 个答案:

没有答案