Помогите прописать условие для клика

Есть фрагмент с назначенным слушателем.

По щелчку №1 открывается активность A1.

По щелчку №2 открывается активность A2.

По щелчку №3 открывается активность A3.

По щелчку №4 открывается активность A4.

№1. Фрагмент принадлежит активности Act1 с A-положением переключателя (radio buttons принадлежащим все той же Act1).

№2. Фрагмент принадлежит активности Act1 с B-положением переключателя (radio buttons принадлежащим все той же Act1).

№3. Фрагмент принадлежит активности Act1 с С-положением переключателя (radio buttons принадлежащим все той же Act1).

№4. Фрагмент принадлежит активности Act2.

Никак не могу сообразить в чем заключаются эти условия. Помогите плиз!!!

adapter.setListener(position -> {

    if (Аct1 + А-радиокнопка (принадлежит Аct1)) {

        // A1

    } else if (Аct1 + B-радиокнопка (принадлежит Аct1)) {

        // A2

    } else if (Аct1 + С-радиокнопка (принадлежит Аct1)) {

        // A3

    } else if (Act2) {

        // A4
    }
});

Ответы (1 шт):

Автор решения: Alice Magic

В общем, у меня получилось так:

Разместила вот такой цикл на прослушке у radio-group:

public class ZB_OurDBActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.zb_activity_our_db);
  
    ...

    // Назначение слушателя RadioGroup
    RadioGroup radioGroup = findViewById(R.id.radio_group);
    radioGroup.setOnCheckedChangeListener((group, checkedId) -> {
        if (checkedId == R.id.radio_creation) {
            FA_ManicureFragment.radioCreation = true;
            FA_PedicureFragment.radioCreation = true;
            FA_WorkplaceFragment.radioCreation = true;

            FA_ManicureFragment.radioEditing = false;
            FA_PedicureFragment.radioEditing = false;
            FA_WorkplaceFragment.radioEditing = false;

            FA_ManicureFragment.radioRemove = false;
            FA_PedicureFragment.radioRemove = false;
            FA_WorkplaceFragment.radioRemove = false;

        } else if (checkedId == R.id.radio_editing) {
            FA_ManicureFragment.radioCreation = false;
            FA_PedicureFragment.radioCreation = false;
            FA_WorkplaceFragment.radioCreation = false;

            FA_ManicureFragment.radioEditing = true;
            FA_PedicureFragment.radioEditing = true;
            FA_WorkplaceFragment.radioEditing = true;

            FA_ManicureFragment.radioRemove = false;
            FA_PedicureFragment.radioRemove = false;
            FA_WorkplaceFragment.radioRemove = false;

        } else if (checkedId == R.id.radio_remove) {
            FA_ManicureFragment.radioCreation = false;
            FA_PedicureFragment.radioCreation = false;
            FA_WorkplaceFragment.radioCreation = false;

            FA_ManicureFragment.radioEditing = false;
            FA_PedicureFragment.radioEditing = false;
            FA_WorkplaceFragment.radioEditing = false;

            FA_ManicureFragment.radioRemove = true;
            FA_PedicureFragment.radioRemove = true;
            FA_WorkplaceFragment.radioRemove = true;

        } else if (checkedId == R.id.radio_exit) {
            ZY_ExitDialogFragment dialog = new ZY_ExitDialogFragment();
            dialog.show(getSupportFragmentManager(), "dialog");
        }
    });

    ...

}
}

А затем открыла переменные в каждом классе фрагментов и сделала в них по такому вот слушателю:

public class FA_ManicureFragment extends Fragment {

protected static Object radioCreation;
protected static Object radioEditing;
protected static Object radioRemove;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    RecyclerView manicureRecycler = (RecyclerView)inflater.inflate(
            R.layout.fa_fragment_manicure, container, false);

        ...

        // Поля для ZB_OurDBActivity
        radioCreation = false;
        radioEditing = false;
        radioRemove = false;

        // Назначение слушателя
        adapter.setListener(position -> {

            if (radioCreation.equals(true)) {
                Intent intent = new Intent(getActivity(), ZC_CreationDBActivity.class);
                intent.putExtra(ZC_CreationDBActivity.EXTRA_MANICURE_ID,
                        manicureDB[position]);
                requireActivity().startActivity(intent);
            }
            else if (radioEditing.equals(true)) {
                Intent intent = new Intent(getActivity(), ZC_EditingDBActivity.class);
                intent.putExtra(ZC_EditingDBActivity.EXTRA_MANICURE_ID,
                        manicureDB[position]);
                requireActivity().startActivity(intent);
            }
            else if (radioRemove.equals(true)) {
                Intent intent = new Intent(getActivity(), ZC_RemoveDBActivity.class);
                intent.putExtra(ZC_RemoveDBActivity.EXTRA_MANICURE_ID,
                        manicureDB[position]);
                requireActivity().startActivity(intent);
            }
            else {
                Intent intent = new Intent(getActivity(), CB_ManicureDetailActivity.class);
                intent.putExtra(CB_ManicureDetailActivity.EXTRA_MANICURE_ID,
                        manicureDB[position]);
                requireActivity().startActivity(intent);
            }
        });

    ...

    return manicureRecycler;
}
}

...и на этом все. Программа работает как мне хотелось)))

→ Ссылка