यह उदाहरण दिखाता है कि एंड्रॉइड में प्रोग्रामेटिक रूप से स्क्रीनशॉट कैसे लें।
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
<इमेज व्यू एंड्रॉइड:आईडी ="@ + आईडी / स्क्रीनशॉट" एंड्रॉइड:लेआउट_विड्थ ="300 डीपी" एंड्रॉइड:लेआउट_हाइट ="300 डीपी" /> <टेक्स्ट व्यू एंड्रॉइड:आईडी ="@ + आईडी / टेक्स्ट " android:textSize="18sp" android:layout_gravity="center" android:text="क्लिक करें" android:layout_width="wrap_content" android:layout_height="wrap_content" />
उपरोक्त कोड में हमने इमेजव्यू और टेक्स्टव्यू के रूप में दो दृश्य लिए हैं। जब उपयोगकर्ता टेक्स्टव्यू पर क्लिक करता है, तो वह स्क्रीन शॉट लेने वाला होता है और इमेजव्यू में जुड़ जाता है।
चरण 3 - निम्न कोड को src/MainActivity.java
में जोड़ेंपैकेज com.example.andy.myapplication;import android.graphics.Bitmap;import android.graphics.Canvas;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;आयात android.widget.ImageView;import android.widget.LinearLayout;import android.widget.TextView;सार्वजनिक वर्ग MainActivity AppCompatActivity को बढ़ाता है {int view=R.layout.activity_main; इमेज व्यू स्क्रीनशॉर्ट; टेक्स्ट व्यू टेक्स्ट व्यू; @Override संरक्षित शून्य पर क्रिएट (बंडल सेव किया गया इंस्टेंसस्टेट) {super.onCreate (savedInstanceState); सेटकंटेंट व्यू (देखें); अंतिम LinearLayout माता-पिता =findViewById (R.id.parent); स्क्रीनशॉट=findViewById(R.id.screenShot); textView=findViewById(R.id.text); textView.setOnClickListener (नया दृश्य। OnClickListener () {@ ओवरराइड सार्वजनिक शून्य पर क्लिक करें (देखें v) {textView.setText ("यह स्क्रीन शॉट टेक्स्ट है"); स्क्रीनशॉट (पैरेंट); }}); } सार्वजनिक शून्य स्क्रीनशॉट (दृश्य देखें) { बिटमैप बिटमैप =बिटमैप.क्रिएट बिटमैप (व्यू.गेटविड्थ (), व्यू.गेटहाइट (), बिटमैप.कॉन्फिग.एआरजीबी_8888); कैनवास कैनवास =नया कैनवास (बिटमैप); देखें। ड्रा (कैनवास); स्क्रीनशॉट.सेटइमेज बिटमैप (बिटमैप); textView.setText ("क्लिक करें"); }}पूर्व>उपरोक्त कोड में हमने स्क्रीनशॉट (व्यू) लिखा है, इस विधि में हमने ऊपर के नीचे से स्क्रीन शॉट लेने के लिए पैरेंट व्यू पास किया है। स्क्रीन लेने के लिए निम्नलिखित कोड का उपयोग करें -
<पूर्व>बिटमैप बिटमैप =बिटमैप.क्रिएटबिटमैप(view.getWidth(),view.getHeight(), Bitmap.Config.ARGB_8888);कैनवास कैनवास =नया कैनवास (बिटमैप);व्यू.ड्रा(कैनवास);स्क्रीनशॉर्ट.सेटइमेजबिटमैप(बिटमैप) );
आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फाइलों में से एक को खोलें और रन पर क्लिक करें टूलबार से आइकन। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -
अब टेक्स्ट व्यू पर क्लिक करें, यह स्क्रीन शॉट लेगा और इमेज व्यू में संलग्न होगा जैसा कि नीचे दिखाया गया है -