Rumah  >  Artikel  >  Bagaimana untuk mendapatkan data dalam serpihan recycleView onViewCreated daripada serpihan lain?

Bagaimana untuk mendapatkan data dalam serpihan recycleView onViewCreated daripada serpihan lain?

王林
王林ke hadapan
2024-02-11 17:51:09478semak imbas

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.

Kandungan soalan

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)

Penyelesaian

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!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam