繁体   English   中英

我不能在 class 片段中使用我的 arraylist

[英]I cannot use my arraylist in class fragment

我尝试在片段中使用 arraylist 我的 arraylist 在片段 class 中不起作用。 在我在主要活动中使用此代码之前请帮我解决这个问题,然后我添加菜单片段我将此代码移动到此片段

然后我的arraylist得到错误

此错误“'android.widget.RelativeLayout'中的'RelativeLayout(anroid.content.Context)'不能应用于'(com.cupaxxhd.mysurah.HomeFragment)'”

'com.cupaxxhd.mysurah.Myadapter' 中的这个“'MyAdapter(android.content.Context, java.util.Arraylist)' 不能应用于'(com.cupaxxhd.mysurah.HomeFragment, Z93F725A07423FE1C889F448B33Dutil)'2

public class HomeFragment extends Fragment {

    RecyclerView mRecyclerView;
    MyAdapter myAdapter;

    public HomeFragment() {
        // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View v =  inflater.inflate(R.layout.fragment_home, container, false);


        mRecyclerView = v.findViewById(R.id.recyclerView);
        mRecyclerView.setLayoutManager(new RelativeLayout(this)); 

        myAdapter = new MyAdapter(this, getMyList());
        mRecyclerView.setAdapter(myAdapter);

        return v;
    }

    private ArrayList<Model> getMyList(){

        ArrayList<Model> models = new ArrayList<>();

        Model m = new Model();
        m.setTitle("Al-Lahab");
        m.setDescription("Surah Al-Lahab adalah surat ke-111 dalam Al-Qur'an.");
        m.setDetails("تَبَّتْ يَدَا أَبِي لَهَبٍ وَتَبّ\n"     
        );

        m.setImg(R.drawable.al_lahab);
        models.add(m);

        return  models;
    }

您需要传递 Context 而不是片段实例,并使用 LayoutManager 而不是 RelativeLayout。 像这样:

mRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));

new MyAdapter(getActivity(), getMyList());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM