est-il possible d'avoir la méthode onActivityResume
dans adapter
& appeler startActivityForResult
?
Oui. Passez simplement le contexte de l'activité à l'adaptateur dans le constructeur de l'adaptateur (ici stocké en tant que mContext). Dans getView, appelez simplement
((Activity) mContext).startActivityForResult(intent,REQUEST_FOR_ACTIVITY_CODE);
Pas nécessairement passer pour passer le contexte dans le constructeur de l'adaptateur. Vous pouvez obtenir le contexte du ViewGroup parent. Exemple d'adaptateur RecyclerView:
Context mContext;
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
mContext = parent.getContext();
...
}
Exemple pour ListView BaseAdapter
Context mContext;
@Override
public View getView(int position, View convertView, ViewGroup parent) {
mContext = parent.getContext();
...
}
Et utilisez-le où vous voulez
((Activity) mContext).startActivityForResult(intent, REQUEST_FOR_ACTIVITY_CODE);
Offcource ...
((Activity) context).startActivityForResult(intent, 911);
Mise en garde !!
Ne passez que MyActivity.this de l'activité à l'adaptateur comme contexte.
Ne passez que getActivity (); du fragment à l'adaptateur comme contexte.