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

Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya Menggunakan Antara Muka?

Mary-Kate Olsen
Lepaskan: 2024-11-19 12:58:03
asal
362 orang telah melayarinya

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();
    }

    ...
}
Salin selepas log masuk

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;
}
Salin selepas log masuk

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() {
        // ...
    }
}
Salin selepas log masuk

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);
Salin selepas log masuk
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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan