Java android.widget.FrameLayout无法强制转换为androidx.recyclerview.widget.recyclerview

Java android.widget.FrameLayout无法强制转换为androidx.recyclerview.widget.recyclerview,java,android,Java,Android,我正在对我的recycler视图执行刷卡刷新功能,但它不断出现无法转换的错误 以下是我的XML: announcement_recycler_view.xml 您正在膨胀一个FrameLayout并将其强制转换为RecyclerView,删除强制转换并使用findViewById查找您的RecyclerView 因此,您的代码应该如下所示: public View onCreateView(LayoutInflater inflater, ViewGroup container,

我正在对我的recycler视图执行刷卡刷新功能,但它不断出现无法转换的错误

以下是我的XML:

announcement_recycler_view.xml

您正在膨胀一个
FrameLayout
并将其强制转换为
RecyclerView
,删除强制转换并使用
findViewById
查找您的
RecyclerView

因此,您的代码应该如下所示:

public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    View view = inflater.inflate(
            R.layout.announcement_recycler_view, container, false);
    announcementRecyclerView = view.findViewById(R.id.my_announcement_recycler_view);

    RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(getActivity());
    announcementRecyclerView.setLayoutManager(layoutManager);

    //initializing the productlist
    announcementList = new ArrayList<>();

    // Session class instance
    session = new SharedPrefManager(getActivity());

    loadAnnouncement();

    return view;
}
public View onCreateView(布局、充气机、视图组容器、,
Bundle savedInstanceState){
视图=充气机。充气(
R.layout.announcement\u recycler\u view,container,false);
announcementRecyclerView=view.findviewbyd(R.id.my\u announcement\u recycler\u view);
RecyclerView.LayoutManager LayoutManager=新的LinearLayoutManager(getActivity());
announcementRecyclerView.setLayoutManager(layoutManager);
//初始化产品列表
announcementList=newarraylist();
//会话类实例
会话=新的SharedPrefManager(getActivity());
loadAnnouncement();
返回视图;
}

ClassCastException表示您错误地强制转换组件,即:您将TextView强制转换为ImageView

因此,请确保在初始化recyclerView时未使用FrameLayouts ID

在您的第一个片段中,您提供的XML表示RecyclerView的ID为my_announcement\u recycler\u view

但是在您的类中,您正在像这样初始化您的RecyclerView

 announcementRecyclerView = (RecyclerView) inflater.inflate(
                R.layout.announcement_recycler_view, container, false)
 announcementRecyclerView = (RecyclerView) inflater.inflate(
                R.layout.my_announcement_recycler_view, container, false)
应该是这样的

 announcementRecyclerView = (RecyclerView) inflater.inflate(
                R.layout.announcement_recycler_view, container, false)
 announcementRecyclerView = (RecyclerView) inflater.inflate(
                R.layout.my_announcement_recycler_view, container, false)

请发布您的AnnouncementFragment.java类及其布局。Thanks@Krishnasheladiya嗨,我已经发了。布局是公告_recycler _view.xml。谢谢
 announcementRecyclerView = (RecyclerView) inflater.inflate(
                R.layout.my_announcement_recycler_view, container, false)