You should do something like this. First create an interface which will use to comunicate with your activity for example :
public interface OnViewSelected {
public void onViewSelected(int viewId);
}
and in your onAttach
do this :
OnViewSelected _mClickListener;
@Override
public void onAttach(Context context) {
super.onAttach(context);
try {
_mClickListener = (OnViewSelected) context;
} catch (ClassCastException e) {
throw new ClassCastException(context.toString() + " must implement onViewSelected");
}
}
In your Fragment implement OnClickListener
and in your onClick()
method do this :
@Override
public void onClick(View v) {
_mClickListener.onViewSelected(456);
}
After that in your Activity you have to implement the interface you created in your Fragment and it will ask you to add unimplemented methods and in your activity you will have function like this :
@Override
public void onViewSelected(int data) {
Log.d("","data : "+data); // this value will be 456.
}
That's all. : )
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…