Rumah  >  Artikel  >  Java  >  Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya Menggunakan Antara Muka?

Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya Menggunakan Antara Muka?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-19 12:58:03322semak imbas

How to Communicate Between a Fragment and its Adapter Using an Interface?

Melaksanakan Antara Muka untuk Komunikasi antara Fragmen dan Penyesuai

Dalam senario yang diterangkan, anda mempunyai serpihan, MyListFragment, mengandungi ListView dan CursorAdapter tersuai. Anda bertujuan untuk memberitahu MyListFragment apabila butang ditekan dalam baris tertentu senarai. Untuk mencapai komunikasi ini, anda boleh menggunakan pendekatan berasaskan antara muka.

Dalam MyListAdapter, tentukan antara muka, AdapterInterface, dengan kaedah panggil balik, butangDitekan (), untuk digunakan semasa klik butang:

public class MyListAdapter extends CursorAdapter {

    public interface AdapterInterface {
        public void buttonPressed();
    }

    ...
}

Seterusnya, ubah suai MyListAdapter untuk memasukkan pembolehubah contoh jenis AdapterInterface dan pembina yang menerima contoh antara muka ini sebagai hujah:

private AdapterInterface buttonListener;

public MyListAdapter (Context context, Cursor c, int flags, AdapterInterface buttonListener) {
  super(context,c,flags);
  this.buttonListener = buttonListener;
}

Dalam MyListFragment, laksanakan AdapterInterface dan gantikan buttonPressed(), yang akan digunakan daripada AdapterView's onClickListener dalam penyesuai:

public MyListFragment extends Fragment implements AdapterInterface {

    @Override
    public void buttonPressed() {
        // ...
    }
}

Akhir sekali, nyatakan MyListAdapter dalam MyListFragment > dan luluskan contoh MyListFragment itu sendiri sebagai hujah kepada pembina penyesuai:

MyListAdapter adapter = new MyListAdapter (getActivity(), myCursor, myFlags, this);
Dengan melakukan ini,

MyListAdapter boleh menggunakan butang Pressed( ) kaedah MyListFragment apabila butang dalam baris senarai ditekan. Ini membolehkan komunikasi lancar antara penyesuai dan serpihan, membolehkan anda mengambil tindakan yang diperlukan apabila butang diklik.

Atas ialah kandungan terperinci Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya Menggunakan Antara Muka?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn