यह उदाहरण दर्शाता है कि एंड्रॉइड में एक टुकड़े से दूसरे टुकड़े में डेटा कैसे पास किया जाए
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
<टुकड़ा एंड्रॉइड:नाम ="com.example.myapplication.FirstFragment" android:id ="@+id/frag_1" android:layout_width ="fill_parent" एंड्रॉइड:layout_height ="fill_parent" />
उपरोक्त कोड में, हमने दो टुकड़ों के बीच डेटा पास करने के लिए टुकड़े लिए हैं।
चरण 3 - निम्नलिखित कोड को src /MainActivity.java
. में जोड़ेंandroid.os.Bundle आयात करें; android.support.v4.app.FragmentActivity आयात करें; सार्वजनिक वर्ग MainActivity FragmentActivity लागू करता है OnButtonPressListener { @Override public void onCreate (बंडल सेव किया गया इंस्टेंसस्टेट) {super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); } @Override public void onButtonPressed(String msg) {// TODO ऑटो-जेनरेटेड मेथड स्टब सेकेंडफ्रैगमेंट Obj =(SecondFragment) getSupportFragmentManager().findFragmentById(R.id.frag_2); Obj.onFragmentInteraction(msg); }}पूर्व>चरण 4 - निम्न कोड को src / FirstFragment.java
. में जोड़ेंimport android.annotation.SuppressLint;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android .support.annotation.NonNull;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android .widget.TextView;पब्लिक क्लास फर्स्टफ्रैगमेंट फ्रैगमेंट बढ़ाता है {@ओवरराइड पब्लिक व्यू ऑनक्रिएट व्यू (लेआउटइन्फ्लेटर इनफ्लेटर, व्यूग्रुप कंटेनर, बंडल सेव्ड इंस्टेंसस्टेट) {व्यूग्रुप रूट =(व्यूग्रुप) inflater.inflate(R.layout.fragment, null); इनिट (रूट); वापसी जड़; } ऑनबटनप्रेस लिस्टनर बटन लिस्टनर; @अटैच पर सार्वजनिक शून्य को ओवरराइड करें (गतिविधि गतिविधि) {सुपर.ऑनअटैच (गतिविधि); कोशिश करें {बटन लिस्टनर =(ऑनबटनप्रेस लिस्टनर) getActivity (); } पकड़ें (क्लासकास्ट एक्सेप्शन ई) {नया क्लासकास्ट एक्सेप्शन फेंकें (गतिविधि। टूस्ट्रिंग () + "ऑनबटन प्रेस्ड को लागू करना चाहिए"); } } void init(ViewGroup root) { TextView but =(TextView)root.findViewById(R.id.text); but.setOnClickListener (नया व्यू। ऑनक्लिक लिस्टनर () {@ ओवरराइड पब्लिक वॉयड ऑनक्लिक (व्यू वी) {// TODO ऑटो-जेनरेटेड मेथड स्टब बटन लिस्टनर.ऑनबटनप्रेस्ड ("मैसेज फ्रॉम फर्स्ट फ्रैगमेंट"); }}); }}पूर्व>चरण 5 - निम्न कोड को src / SecondFragment.java
में जोड़ेंimport android.annotation.SuppressLint;import android.os.Bundle;import android.support.annotation.NonNull;import android.support.annotation। अशक्त;आयात android.support.v4.app.Fragment;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;public class सेकेंडफ्रैगमेंट फ्रैगमेंट बढ़ाता है { टेक्स्टव्यू टेक्स्ट व्यू; दृश्य देखें; @Nullable @Override public view onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup कंटेनर, @Nullable Bundle saveInstanceState) {view =inflater.inflate(R.layout.fragment, container, false); वापसी दृश्य; } सार्वजनिक शून्य onFragmentInteraction(String uri) { Log.d("sai",uri); टेक्स्ट व्यू =view.findViewById (R.id.text); टेक्स्ट व्यू.सेटटेक्स्ट (यूरी); }}पूर्व>चरण 6 - निम्नलिखित कोड को रेस/लेआउट/फ्रैगमेंट.एक्सएमएल में जोड़ें।
<टेक्स्ट व्यू एंड्रॉइड:आईडी ="@ + आईडी / टेक्स्ट" एंड्रॉइड:टेक्स्ट साइज ="30 एसपी" एंड्रॉइड:टेक्स्ट ="क्लिक करें" एंड्रॉइड:लेआउट_विड्थ ="रैप_कंटेंट" एंड्रॉइड :layout_height ="wrap_content" /> चरण 7 - निम्न कोड को src/ OnButtonPressListener.java में जोड़ें।
सार्वजनिक इंटरफ़ेस OnButtonPressListener { public void onButtonPressed(String msg);}आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -
अब फर्स्ट फ्रैगमेंट टेक्स्ट व्यू पर क्लिक करें, यह नीचे दिखाए अनुसार परिणाम दिखाएगा –