सही तरीके से फ्रैगमेंट को इंस्टेंट करना!
getArguments()
setArguments()
जब यह स्थैतिक विधि का उपयोग करके एक फ्रैगमेंट को तत्काल करने की बात आती है तो विधियाँ बहुत उपयोगी लगती हैं।
अर्थातMyfragment.createInstance(String msg)
यह कैसे करना है?
खंडित कोड
public MyFragment extends Fragment {
private String displayMsg;
private TextView text;
public static MyFragment createInstance(String displayMsg)
{
MyFragment fragment = new MyFragment();
Bundle args = new Bundle();
args.setString("KEY",displayMsg);
fragment.setArguments(args); //set
return fragment;
}
@Override
public void onCreate(Bundle bundle)
{
displayMsg = getArguments().getString("KEY"): // get
}
@Override
public View onCreateView(LayoutInlater inflater, ViewGroup parent, Bundle bundle){
View view = inflater.inflate(R.id.placeholder,parent,false);
text = (TextView)view.findViewById(R.id.myTextView);
text.setText(displayMsg) // show msg
returm view;
}
}
मान लीजिए कि आप एक इंस्टेंस बनाते हुए एक स्ट्रिंग पास करना चाहते हैं। यह आप इसे कैसे करेंगे।
MyFragment.createInstance("This String will be shown in textView");
अधिक पढ़ें
1) क्यों Myfragment.getInstance (स्ट्रिंग संदेश) नए MyFragment (स्ट्रिंग संदेश) पर पसंद किया जाता है?
2) टुकड़े पर नमूना कोड