Ответ 1
Вы должны сделать что-то вроде этого. Сначала создайте интерфейс, который будет использоваться для связи с вашей деятельностью, например:
public interface OnViewSelected {
public void onViewSelected(int viewId);
}
и в вашем onAttach
выполните следующее:
OnViewSelected _mClickListener;
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
try {
_mClickListener = (OnViewSelected) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString() + " must implement onViewSelected");
}
}
В вашем инструменте фрагмента OnClickListener
и в вашем методе onClick()
сделайте следующее:
@Override
public void onClick(View v) {
_mClickListener.onViewSelected(456);
}
После этого в вашей деятельности вы должны реализовать интерфейс, который вы создали в своем фрагменте, и он попросит вас добавить нереализованные методы, и в вашей деятельности у вас будет такая функция:
@Override
public void onViewSelected(int data) {
Log.d("","data : "+data); // this value will be 456.
}
Это все.:)