Android:必需的Android.support.v7.app.ActionBar已找到Android.app.ActionBar
我正在尝试使用getActionBar()方法,我收到此错误:必需的android.support.v7.app.ActionBar找到了android.app.ActionBar。如何更正此问题?如果支持低于11的API级别,则必须在项目中添加support v4库以使用actionbarAndroid:必需的Android.support.v7.app.ActionBar已找到Android.app.ActionBar,android,android-actionbar,Android,Android Actionbar,我正在尝试使用getActionBar()方法,我收到此错误:必需的android.support.v7.app.ActionBar找到了android.app.ActionBar。如何更正此问题?如果支持低于11的API级别,则必须在项目中添加support v4库以使用actionbar import android.support.v7.app.ActionBar 如果仅支持API 11级及更高级别: import android.app.ActionBar 有关更多信息,请转到确保清
import android.support.v7.app.ActionBar
如果仅支持API 11级及更高级别:
import android.app.ActionBar
有关更多信息,请转到确保清单文件中的最低api级别高于11。因为只有在低于11级的api中才支持包
android.support.v7.app.ActionBar
因此,如果您想从导入android.app.ActionBar中使用ActionBar,那么您的清单文件中必须有minimun api级别11。否则,您必须在项目中添加support v4库,以使用android.support.v7.app.actionbar软件包中的actionbar。发生此错误是因为您正在创建对象并将其传递给其他类引用变量。因为
getActionManager
提供了android.app.ActionBar
的对象,但您正试图将android.app.ActionBar
类对象分配给android.support.v7.app.ActionBar
但这两个类提供相同的功能<代码>android.support.v7.app.ActionBar类在我们使用的sdk最小版本低于api 11时使用。要获得api 11下面的ActionBar对象,我们需要android.support.v7.app.ActionBar
class对象
要获得动作栏,您需要遵循以下两种方法之一
导入android.support.v7.app.ActionBar
并使用getSupportActionBar()
方法od活动
导入android.app.ActionBar并使用getActionBar()
如果运行api 11及更高版本
import android.app.ActionBar;
另外,如果它声明它已经存在,请确保将其删除确保您的应用程序具有应用程序栏或标题栏,请在清单文件或您的style.xml中检查您的应用程序主题 如果你的风格是这样的:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- your style -->
</style>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- your style-->
</style>
当使用ActionBar ActionBar=getSupportActionBar()时,它将抛出null异常代码>
请确保您使用导入android.support.v7.app.ActionBar
它不是一个重复项,这在中已经提到。虽然此代码片段可以解决问题,但确实有助于提高您文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。