Dalam pembangunan Android, Fragment ialah komponen penting yang digunakan untuk membina antara muka pengguna yang fleksibel. Apabila menggunakan Fragmen, kadangkala kita perlu mendapatkan data daripada satu Fragmen dalam Fragmen yang lain. Kemudian dalam kaedah onViewCreated serpihan, kita boleh mendapatkan data dalam RecyclerView dalam Fragmen lain melalui kaedah findViewById. Pertama, kita perlu memastikan bahawa RecyclerView telah dimulakan dan diisi dengan data sebelum mendapatkan data. Kemudian, kita boleh mendapatkan contoh Fragment sasaran melalui kaedah findFragmentById FragmentManager, dan kemudian mendapatkan contoh RecyclerView melalui kaedah findViewById bagi contoh itu. Akhirnya, kita boleh mendapatkan data melalui penyesuai RecyclerView. Dengan cara ini, kita boleh mendapatkan data RecyclerView dalam Fragmen lain dalam Fragmen semasa. Ini ialah kaedah yang mudah dan berkesan yang boleh membantu kami mengendalikan pemindahan dan perkongsian data dalam pembangunan Android dengan lebih baik.
Saya mempunyai serpihan senaman dan berkas untuk memindahkan data ke serpihan delitefragment:
fragmentmanager fragmentmanager = getfragmentmanager(); fragmenttransaction fragmenttransaction = fragmentmanager.begintransaction(); fragmenttransaction.replace(r.id.fragment_container, new delitefragment()); fragmenttransaction.commit();
Dalam delitefragment saya mempunyai kaedah onviewcreated di mana panggilan data paparan kitar semula dikunci.
@Override public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); //******************************** getting data from DeliteFragment getParentFragmentManager().setFragmentResultListener("text from WOF to AFJ", this, new FragmentResultListener() { @Override public void onFragmentResult(@NonNull String requestKey, @NonNull Bundle textBundle) { Integer number_workout_train_position = textBundle.getInt("text from WOF to AFJ"); String nameDayTrain = new CardSourceImplDayTrain(getActivity()).getCardData(number_workout_train_position).getTitle().toString(); } }); String nameDayTrainRW = nameDayTrain; recyclerView = view.findViewById(R.id.train_delite_recycleView); cardSource = new CardSourceImplDelite(getActivity().getApplicationContext(),nameDayTrainRW,nameDayTrainRW); adapter = new itemAdapterDelite(cardSource); }
Bagaimana untuk mendapatkan data dalam onviewcreated namedaytrain? (Jadi ia akan pergi ke penyesuai recyclerview)
Gunakan perpustakaan model paparan AndroidX untuk berkomunikasi dengan Aktiviti dan Fragmen anda. Ianya sangat mudah ✍️
Di sini: AndroidX Jetpack ViewModel
Atas ialah kandungan terperinci Bagaimana untuk mendapatkan data dalam serpihan recycleView onViewCreated daripada serpihan lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!