java.lang.ClassCastException: android.support.v7.widget.ActivityChooserView$InnerLayout 无法转换为 android.support.v7.widget.LinearLayoutCompat

java.lang.ClassCastException: android.support.v7.widget.ActivityChooserView$InnerLayout cannot be cast to android.support.v7.widget.LinearLayoutCompat

从 LinearLayout 切换到 ConstraintLayout 引发此错误

java.lang.ClassCastException: android.support.v7.widget.ActivityChooserView$InnerLayout cannot be cast to android.support.v7.widget.LinearLayoutCompat                                                                                                                                             

当我尝试在我的片段 onCreateOptionsMenu() 中膨胀菜单时发生错误。

我膨胀的菜单:-

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">   
    <item
        android:id="@+id/action_share"
        app:showAsAction="always"
        android:orderInCategory="101"
        android:icon="@android:drawable/ic_menu_share"
        android:title="@string/action_share"
        app:actionProviderClass="android.support.v7.widget.ShareActionProvider"
        />
</menu>

我的onCreateOptionsMenu(..)

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {     
    inflater.inflate(R.menu.customerdetail, menu);      
    MenuItem menuItem = menu.findItem(R.id.action_share);
    mShareActionProvider = (ShareActionProvider) 
    MenuItemCompat.getActionProvider(menuItem);         
 // If i comment out this whole part everything is fine !!
 }

编辑 :- 日志截图:-

Update :- 添加 app:actionProviderClass="android.support.v7.widget.ShareActionProvider" 项会导致错误。

根据 ShaneCoder 的建议下降到 27.0.2/更改为 LinearLayout 删除了错误,但我想知道

Why is 27.1.0 is throwing such error at runtime while inflating Class,android.support.v7.widget.ShareActionProvider ? (is it a bug in 27.1.0 )

不确定这是否是您要解决的问题...

我最近升级了我的支持库依赖项。借助支持库 27.1.0,我得到了经过验证的代码的异常。我现在正在使用 27.0.2。这个异常消失了。

未经测试或证明,但认为它可能有所帮助。

编辑

我不确定 27.1.0 出了什么问题。过去我不得不备份一个次要版本以解决升级到最新支持库的问题。我想没有人是完美的。我相信 27.0.227.1.0

之前的最新版本

编辑 2

Here's a link 到 Google 问题跟踪器上的问题。它已标记为已于 2018 年 2 月 28 日修复。应该会很快发布。

编辑 3

已确认在 27.1.1

中修复

我也遇到了同样的问题。这是错误。 SharedActionProvider 在 27.1.0 中抛出异常 升级到27.1.1后解决 希望这会有所帮助。 看看这个 link Fixed issues in 27.1.1