Rumah > Java > javaTutorial > Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya menggunakan Klik Butang Didorong Peristiwa?

Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya menggunakan Klik Butang Didorong Peristiwa?

DDD
Lepaskan: 2024-11-19 10:09:02
asal
586 orang telah melayarinya

How to Communicate Between a Fragment and its Adapter using an Event-Driven Button Click?

Mengantaramuka Serpihan dan Penyesuai melalui Klik Butang Didorong Peristiwa

Untuk menyampaikan peristiwa antara Fragmen dan Penyesuai yang berkaitan, seseorang boleh melaksanakan antara muka dalam kelas Penyesuai. Dalam senario ini, Fragmen bernama MyListFragment mengandungi ListView yang menggunakan CursorAdapter tersuai. Apabila butang diklik dalam baris senarai, pemberitahuan diperlukan untuk dihantar ke Fragmen.

Penyelesaian melibatkan penciptaan antara muka dalam kelas Penyesuai:

public class MyListAdapter extends CursorAdapter {

    public interface AdapterInterface {
        void buttonPressed();
    }

    ...
}
Salin selepas log masuk

Dalam kelas Fragment ( MyListFragment), laksanakan AdapterInterface:

public class MyListFragment extends Fragment implements AdapterInterface {

    @Override
    public void buttonPressed() {
        // Some action
    }
}
Salin selepas log masuk

Untuk mengikat Penyesuai dan Fragmen, ubah suai kelas Penyesuai:

public class MyListAdapter extends CursorAdapter {

    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 kaedah bindView Adapter, tentukan tingkah laku klik butang:

@Override
public void bindView(View view, Context context, Cursor cursor) {
    ...

    holder.button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            buttonListener.buttonPressed();
        }
    });
}
Salin selepas log masuk

Apabila mencipta Penyesuai, berikan Fragmen sebagai hujah:

MyListAdapter adapter = new MyListAdapter(getActivity(), myCursor, myFlags, this);
Salin selepas log masuk

Mekanisme ini memastikan bahawa apabila butang diklik, Fragmen menerima pemberitahuan melalui antara muka yang dilaksanakan.

Atas ialah kandungan terperinci Bagaimana untuk Berkomunikasi Antara Serpihan dan Penyesuainya menggunakan Klik Butang Didorong Peristiwa?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan