【发布时间】:2014-05-20 20:19:39
【问题描述】:
好的,我一直在将我的活动扩展到
extends ActionBarActivity
我的主菜单页面
extends FragmentActivity
当我将它更改为扩展 ActionBarActivity 以便我可以在主菜单上看到我的操作栏标题时,它会抛出并给我“错误膨胀类片段”错误。
有没有办法解决这个问题?
【问题讨论】:
标签: android
好的,我一直在将我的活动扩展到
extends ActionBarActivity
我的主菜单页面
extends FragmentActivity
当我将它更改为扩展 ActionBarActivity 以便我可以在主菜单上看到我的操作栏标题时,它会抛出并给我“错误膨胀类片段”错误。
有没有办法解决这个问题?
【问题讨论】:
标签: android
ActionBarActivity extends android.support.v4.app.FragmentActivity,所以ActionBarActivity 有两个目的。
【讨论】:
您的代码来自 the Action Bar compatibility example 是否随 SDK 一起提供?如果是这样,只需更改该示例中的 ActionBarActivity 类以扩展 FragmentActivity(来自我假设的 compatibility library)而不是 Activity。
【讨论】:
遇到同样的问题,如其他回复中所述,解决方案是编辑您的 ActionBarActivity 课程。
此类在您的代码中定义 (com.google.android.actionbarcompat)。您唯一需要做的就是将 extends Activity 从 android.support.v4.app.FragmentActivity 更改为 extends FragmentActivity。
【讨论】:
您的片段有菜单项吗?对于app:showAsAction 和app:actionLayout 等,请使用您自己的app 命名空间而不是android。
要将命名空间添加到 XML,请在 menu 标记中使用这一行
xmlns:app="http://schemas.android.com/apk/res-auto"
例如
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/menu_settings" app:showAsAction="ifRoom" android:title="@string/menu_settings" android:orderInCategory="100" />
</menu>
注意app:showAsAction 而不是android:showAsAction
【讨论】: