दिलचस्प पोस्ट
पायथन में एसएफटीपी? (स्वतंत्र मंच) एक JSON सरणी को पार्स करने के लिए GSON का उपयोग करना MySQL त्रुटि कोड: 1175 MySQL कार्यक्षेत्र में अद्यतन के दौरान पायथन में पैकेज आयात करना कैसे प्रोग्रामेटिक एंड्रॉइड में स्क्रीन लॉक करें? बाह्य डेटा पर आधारित गतिशील रूटिंग फ़ंक्शन संयोजन रचना: कैसे करता है (।)। (।) काम करते हो? उपयोगकर्ता द्वारा पुश नोटिफिकेशन सक्षम किए जाने पर iPhone पर निर्धारित करें वेतन वृद्धि के बाद पूर्व वृद्धि – जावास्क्रिप्ट अनुकूलन फ़ायरफ़ॉक्स समान मूल नीति को अक्षम करें PHP में एक उद्धरण को छोड़कर जब MySQL में प्रवेश करें कैसे सेट सीमित करने के लिए केवल "वैध" उपयोग करता है? सीएसएस के साथ निर्दिष्ट डेवलपर के आधार पर, क्या एक तत्व की चौड़ाई प्रतिशत या पिक्सेल में jQuery का उपयोग करना संभव है? स्केलर्न से आयात करने में आयात की गई त्रुटि: नाम चेक_बिल्ड को आयात नहीं किया जा सकता एक नोडजेएस http.get प्रतिक्रिया में शरीर कहां है?

कैसे एक गतिविधि से दूसरे में ArrayList <CustomeObject> पास करें?

मैं एक गतिविधि से निम्नलिखित ArrayList भेजना चाहता हूं, कृपया मदद करें

ContactBean m_objUserDetails = new ContactBean(); ArrayList<ContactBean> ContactLis = new ArrayList<ContactBean>(); 

मैं इसके बाद के संस्करण में डेटा जोड़ने के बाद उपरोक्त arraylist भेज रहा हूँ

  Intent i = new Intent(this,DisplayContact.class); i.putExtra("Contact_list", ContactLis); startActivity(i); 

लेकिन मुझे इसे ठीक करने में समस्या हो रही है

 ArrayList<ContactBean> l1 = new ArrayList<ContactBean>(); Bundle wrapedReceivedList = getIntent().getExtras(); l1= wrapedReceivedList.getCharSequenceArrayList("Contact_list"); 

इस बिंदु पर मुझे यह त्रुटि मिल रही है:

 Type mismatch: cannot convert from ArrayList<CharSequence> to ArrayList<ContactBean> 

मेरे संपर्क बीन वर्ग सीरियलजबल को लागू करता है कृपया यह भी बताएं कि हमें सीरिजलाज करने योग्य इंटरफ़ेस को कार्यान्वित करना क्यों है।

वेब के समाधान से एकत्रित समाधान "कैसे एक गतिविधि से दूसरे में ArrayList <CustomeObject> पास करें?"

आप एक ArrayList<E> उसी तरह से पारित कर सकते हैं, यदि E प्रकार Serializable

आप स्टोर करने के लिए Intent के putExtra (String name, Serializable value) को कॉल करेंगे, और पुनः प्राप्त करने के लिए getSerializableExtra (String name) प्राप्त करेंगे।

उदाहरण:

 ArrayList<String> myList = new ArrayList<String>(); intent.putExtra("mylist", myList); 

अन्य गतिविधि में:

 ArrayList<String> myList = (ArrayList<String>) getIntent().getSerializableExtra("mylist"); 

पहली गतिविधि में ..

 ArrayList<ContactBean> fileList = new ArrayList<ContactBean>(); Intent intent = new Intent(MainActivity.this, secondActivity.class); intent.putExtra("FILES_TO_SEND", fileList); startActivity(intent); 

रिसीवर गतिविधि में:

 ArrayList<ContactBean> filelist = (ArrayList<ContactBean>)getIntent().getSerializableExtra("FILES_TO_SEND");` 

आपको अपने ContactBean वर्ग में पार्सलेबल की आवश्यकता होती है, मैंने आपके लिए एक उदाहरण रखा है:

 public class ContactClass implements Parcelable { private String id; private String photo; private String firstname; private String lastname; public ContactClass() { } private ContactClass(Parcel in) { firstname = in.readString(); lastname = in.readString(); photo = in.readString(); id = in.readString(); } @Override public int describeContents() { // TODO Auto-generated method stub return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(firstname); dest.writeString(lastname); dest.writeString(photo); dest.writeString(id); } public static final Parcelable.Creator<ContactClass> CREATOR = new Parcelable.Creator<ContactClass>() { public ContactClass createFromParcel(Parcel in) { return new ContactClass(in); } public ContactClass[] newArray(int size) { return new ContactClass[size]; } }; // all get , set method } 

और यह आपके कोड के लिए मिलते हैं और सेट करते हैं:

 Intent intent = new Intent(this,DisplayContact.class); intent.putExtra("Contact_list", ContactLis); startActivity(intent); 

द्रितीय श्रेणी:

 ArrayList<ContactClass> myList = getIntent().getParcelableExtra("Contact_list"); 

इस कोड का उपयोग ऐन्थिएयर गतिविधि को सरलीचलने के लिए करें ..

सबसे पहले हमारे संपर्क बीन serialize

 public class ContactBean implements Serializable { //do intialization here } 

अब अपने सरणी को पास करें ..

  Intent intent = new Intent(this,name of activity.class); contactBean=(ConactBean)_arraylist.get(position); intent.putExtra("contactBeanObj",conactBean); _activity.startActivity(intent);