Java 只能与主题一起使用的AppCompat小部件。AppCompat主题(或子代)
这里的iOS开发者被扔进了Android项目的狼群中。我收到了一些错误代码,这些代码都类似于meutils:View类androidx.appcompat.widget.AppCompatTextView是一个appcompat小部件,只能与Theme.appcompat主题(或子代)一起使用。只要运行以下代码段:Java 只能与主题一起使用的AppCompat小部件。AppCompat主题(或子代),java,android,android-layout,Java,Android,Android Layout,这里的iOS开发者被扔进了Android项目的狼群中。我收到了一些错误代码,这些代码都类似于meutils:View类androidx.appcompat.widget.AppCompatTextView是一个appcompat小部件,只能与Theme.appcompat主题(或子代)一起使用。只要运行以下代码段: view = inflater.inflate(R.layout.f_basic_dashboard_screen, null, false) 我的充气机实例化如下: val in
view = inflater.inflate(R.layout.f_basic_dashboard_screen, null, false)
我的充气机实例化如下:
val inflater: LayoutInflater = LayoutInflater.from(SqueaksApplication.getApplicationInstance())
squeksapplication.getApplicationInstance()
只返回公共类squeksapplication扩展应用程序的实例
对于这个问题,我找到的几乎每个答案都指向项目的清单作为问题,并且需要为项目提供一个主题。我的项目清单如下所示:
<application
android:name=".SqueaksApplication"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:usesCleartextTraffic="true"
tools:ignore="GoogleAppIndexingWarning,UnusedAttribute"
tools:replace="android:icon,android:allowBackup">
您的问题是使用的
上下文:val充气器:LayoutInflater=LayoutInflater.from(squeksapplication.getApplicationInstance())
ApplicationContext
没有你的应用主题。
您需要传递的是活动,而不是应用程序上下文。发布styles.xml或themes.xml能否提供一个如何正确传递活动的示例?@ZacharyBell您是否在活动或片段中膨胀视图?这是我所在的类类DashboardScreensAdapter:RecyclerView.Adapter(),CoroutineScope{
它正在处理的类是一个片段
它是类仪表板屏幕片段:片段(),仪表板屏幕适配器。加载侦听器{
@ZacharyBell在片段中,例如,您可以使用requireContext()。
<style name="MainActivityTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:actionMenuTextColor">#FFF</item>
<item name="actionBarStyle">@style/MainActivityTheme.Toolbar</item>
<item name="actionBarTheme">@style/MainActivityTheme.ToolbarOverlay</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="toolbarStyle">@style/MainActivityTheme.Toolbar</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColorPrimary">@color/text_primary</item>
<item name="android:textColorSecondary">@color/text_secondary</item>
<item name="android:windowBackground">@color/background</item>
<item name="actionOverflowButtonStyle">@style/MainActivityTheme.ActionOverflow</item>
<item name="alertDialogTheme">@style/AlertDialogTheme</item>
</style>
<style name="AlertDialogTheme" parent="Base.Theme.AppCompat.Light.Dialog.Alert">
<item name="android:textColorPrimary">#DE000000</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="MainActivityTheme.ActionOverflow" parent="Base.Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/ic_settings</item>
</style>
<style name="MainActivityTheme.Toolbar" parent="Widget.AppCompat.ActionBar.Solid">
<item name="background">@color/colorPrimary</item>
<item name="elevation">4dp</item>
<item name="titleTextAppearance">@style/MainActivityTheme.ToolbarTextAppearance</item>
<item name="android:textColorPrimary">@android:color/white</item>
<item name="android:textColorSecondary">@android:color/white</item>
</style>
<style name="MainActivityTheme.ToolbarOverlay" parent="ThemeOverlay.AppCompat.ActionBar">
<item name="android:textColorPrimary">@android:color/white</item>
<item name="android:textColorSecondary">@android:color/white</item>
</style>
<style name="MainActivityTheme.ToolbarTextAppearance" parent="TextAppearance.AppCompat.Title">
<item name="android:textColor">#81be41</item>
<item name="android:textSize">16sp</item>
<item name="android:textStyle">bold</item>
</style>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:actionMenuTextColor">#FFF</item>
<item name="actionBarStyle">@style/Toolbar</item>
<item name="actionBarTheme">@style/ToolbarOverlay</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="toolbarStyle">@style/Toolbar</item>
<item name="android:textColorPrimary">@color/text_primary</item>
<item name="android:textColorSecondary">@color/text_secondary</item>
<item name="android:windowBackground">@color/background</item>
<item name="actionOverflowButtonStyle">@style/ActionOverflow</item>
<item name="alertDialogTheme">@style/AlertDialogTheme</item>
</style>
<style name="AppTheme.Dark" parent="Theme.AppCompat.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:windowBackground">@color/colorPrimary</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="ActionOverflow" parent="Base.Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/ic_dots_vertical_white</item>
</style>
<style name="Toolbar" parent="Widget.AppCompat.ActionBar.Solid">
<item name="background">@color/colorPrimary</item>
<item name="elevation">4dp</item>
<item name="titleTextAppearance">@style/ToolbarTextAppearance</item>
<item name="android:textColorPrimary">@android:color/white</item>
<item name="android:textColorSecondary">@android:color/white</item>
</style>
<style name="ToolbarOverlay" parent="ThemeOverlay.AppCompat.ActionBar">
<item name="android:textColorPrimary">@android:color/white</item>
<item name="android:textColorSecondary">@android:color/white</item>
</style>
<style name="ToolbarTextAppearance" parent="TextAppearance.AppCompat.Title">
<item name="android:textColor">#81be41</item>
<item name="android:textSize">20sp</item>
</style>
<style name="Splash" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
</style>
<style name="squeak_item_popup_menu_animation">
<item name="android:windowEnterAnimation">@anim/squeak_item_popup_menu_animation_enter</item>
<item name="android:windowExitAnimation">@anim/squeak_item_popup_menu_animation_exit</item>
</style>
<style name="Theme.Transparent" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>