У меня есть ImageButton Я могу получить доступ к своей работе и в своем фрагменте. Я хочу, чтобы действия выполнялись в обоих указанных классах, поэтому я реализовал onClickListener для обоих из них.Несколько onClickListener для одной кнопки
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity);
ImageButton imageButton = (ImageButton) findViewById(R.id.my_image_button);
imageButton.setOnClickListener(new OnClickListener() ...);
}
И тот же самый простой кусок кода для фрагмента запущенного этой деятельности (Но в onViewCreated).
Я попробовал, и активирован только onClickListener фрагмента.
Итак, вот мой вопрос, есть ли способ заставить мою кнопку запускать как Activity, так и Fragment's onClickListener?
Я знаю, что я мог бы вызвать метод Фрагмента из onClick Activity, но было бы намного проще просто запустить его внутри Фрагмента.
EDIT:
Я не готово сделать это через два OnClickListener любой цена, это было только в случае, если было более простым способом, чем активность фрагмента обратных вызовов (в моем случае) ,
Как сказал 空 気,, второй onClickListener отключит первый. В этом случае останутся только обратные вызовы.
Плюс, подумав немного об этом, это сделает код более понятным. Обратные вызовы, да!
* активировать как Activity, так и Fragment onClickListener? * В то же время? –
Да. Два onClickListeners в разных классах для одного события. – Cedric
Вы попробовали 'getActivity(). ImageButton.setOnClickListener (новый OnClickListener() ...);' (define 'imageButton' as public) –