এই উদাহরণটি দেখায় কিভাবে প্রোগ্রাম্যাটিকভাবে অ্যান্ড্রয়েডে স্ক্রিনশট নিতে হয়।
ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে সমস্ত প্রয়োজনীয় বিবরণ পূরণ করুন৷
ধাপ 2 − res/layout/activity_main.xml-এ নিম্নলিখিত কোড যোগ করুন।
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="https://schemas.android.com/apk/res/android" android:id="@+id/parent" xmlns:tools="https://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:background="#33FFFF00" android:orientation="vertical"> <ImageView android:id="@+id/screenShot" android:layout_width="300dp" android:layout_height="300dp" /> <TextView android:id="@+id/text" android:textSize="18sp" android:layout_gravity="center" android:text="Click" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
উপরের কোডে আমরা ইমেজভিউ এবং টেক্সটভিউ হিসাবে দুটি ভিউ নিয়েছি। ব্যবহারকারী যখন টেক্সটভিউতে ক্লিক করেন, তখন এটি স্ক্রিন শট নেয় এবং ইমেজভিউতে যুক্ত হয়।
ধাপ 3 − src/MainActivity.java
-এ নিম্নলিখিত কোড যোগ করুনpackage 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; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; public class MainActivity extends AppCompatActivity { int view=R.layout.activity_main; ImageView screenShort; TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(view); final LinearLayout parent=findViewById(R.id.parent); screenShot=findViewById(R.id.screenShot); textView=findViewById(R.id.text); textView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { textView.setText("It is screen shot text"); screenShot(parent); } }); } public void screenShot(View view) { Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); view.draw(canvas); screenShot.setImageBitmap(bitmap); textView.setText("click"); } }
উপরের কোডে আমরা স্ক্রিনশট(ভিউ) লিখেছি, এই পদ্ধতিতে আমরা উপরের প্রান্ত থেকে স্ক্রিন শট নেওয়ার জন্য প্যারেন্ট ভিউ পাস করেছি। স্ক্রিন নিতে নিম্নলিখিত কোড ব্যবহার করুন -
Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); view.draw(canvas); screenShort.setImageBitmap(bitmap);
আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালানোর জন্য, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং রান এ ক্লিক করুন টুলবার থেকে আইকন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে -
এখন টেক্সট ভিউ-এ ক্লিক করুন, এটি স্ক্রিন শট নেবে এবং নিচের চিত্রের মতো চিত্র ভিউতে যুক্ত হবে -