इससे पहले मैं उपयोग कर रहा हूँ onAttach (Activity activity)
प्राप्त करने के लिए context
मेंFragment
मुसीबत
onAttach (Activity activity)
विधि एपीआई स्तर 23 में पदावनत किया गया था।
समाधान
अब Fragment
हम संदर्भ प्राप्त कर सकते हैंonAttach (Context context)
onAttach (Context context)
- कहा जाता है जब एक टुकड़ा पहली बार इसके साथ जुड़ा हुआ है
context
। onCreate(Bundle)
इसके बाद कॉल किया जाएगा।
प्रलेखन
/**
* Called when a fragment is first attached to its context.
* {@link #onCreate(Bundle)} will be called after this.
*/
@CallSuper
public void onAttach(Context context) {
mCalled = true;
final Activity hostActivity = mHost == null ? null : mHost.getActivity();
if (hostActivity != null) {
mCalled = false;
onAttach(hostActivity);
}
}
नमूना कोड
public class FirstFragment extends Fragment {
private Context mContext;
public FirstFragment() {
// Required empty public constructor
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
mContext=context;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rooView=inflater.inflate(R.layout.fragment_first, container, false);
Toast.makeText(mContext, "THIS IS SAMPLE TOAST", Toast.LENGTH_SHORT).show();
// Inflate the layout for this fragment
return rooView;
}
}
ध्यान दें
हम यह भी उपयोग कर सकते हैं getActivity()
पाने के लिए context
में Fragments
लेकिन getActivity()
लौट सकते हैं null
यदि आपके fragment
वर्तमान में एक माता पिता के साथ संलग्न नहीं है activity
,