কম্পিউটার টিউটোরিয়াল

Kotlin-এ Android অ্যাপে প্রোগ্রামেটিক্যালি টেক্সট কপি (Ctrl+C) করার পদ্ধতি


এই উদাহরণটি দেখায় কিভাবে Kotlin ব্যবহার করে Android অ্যাপে প্রোগ্রামেটিক্যালি টেক্সট কপি করা যায়।

ধাপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project নির্বাচন করে একটি নতুন প্রজেক্ট তৈরি করুন।

ধাপ ২: activity_main.xml ডিজাইন করুন

res/layout/activity_main.xml ফাইলে নিচের কোডটি যোগ করুন:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical"
    tools:context=".MainActivity">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="70dp"
        android:text="Tutorials Point"
        android:textAlignment="center"
        android:textColor="@android:color/holo_green_dark"
        android:textSize="32sp"
        android:textStyle="bold" />
    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="100dp"
        android:hint="Enter your text" />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:onClick="copyText"
        android:text="Copy text" />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:onClick="pasteText"
        android:text="Paste text" />
    <TextView
        android:textColor="@android:color/holo_red_dark"
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:textSize="24sp"
        android:textStyle="bold" />
</LinearLayout>

ধাপ ৩: MainActivity.kt-এ কপি-পেস্ট লজিক লিখুন

src/MainActivity.kt ফাইলে নিচের কোডটি যোগ করুন:

import android.content.ClipData
import android.content.ClipboardManager
import android.content.Context
import android.os.Bundle
import android.view.View
import android.widget.EditText
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
    lateinit var editText: EditText
    lateinit var textView: TextView
    lateinit var clipboardManager: ClipboardManager

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"
        editText = findViewById(R.id.editText)
        textView = findViewById(R.id.textView)
    }

    fun copyText(view: View) {
        val text = editText.text.toString()
        if (text.isNotEmpty()) {
            clipboardManager = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
            val clipData = ClipData.newPlainText("key", text)
            clipboardManager.setPrimaryClip(clipData)
            Toast.makeText(applicationContext, "Copied", Toast.LENGTH_SHORT).show()
        } else {
            Toast.makeText(applicationContext, "No text to be copied", Toast.LENGTH_SHORT).show()
        }
    }

    fun pasteText(view: View) {
        val clipData: ClipData = clipboardManager.primaryClip!!
        val item: ClipData.Item = clipData.getItemAt(0)
        textView.text = item.text.toString()
        Toast.makeText(applicationContext, "Text is being Pasted", Toast.LENGTH_SHORT).show()
    }
}

ধাপ ৪: AndroidManifest.xml কনফিগার করুন

androidManifest.xml ফাইলে নিচের কোডটি যোগ করুন:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android" package="com.example.q11">
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

অ্যাপ্লিকেশন রান করুন

ডিভাইস সংযুক্ত করে Android Studio থেকে Run করুন। টেক্সট লিখে Copy বাটনে ক্লিক করলে ক্লিপবোর্ডে কপি হবে।

  1. অ্যান্ড্রয়েড অ্যাপ প্রোগ্রাম্যাটিক্যালি রিস্টার্ট করার পদ্ধতি

  2. অ্যান্ড্রয়েড অ্যাপে প্রোগ্রামেটিক্যালি টেক্সট কপি-পেস্ট করা (Ctrl+C/V)

  3. Kotlin-এ Android অ্যাপ থেকে HTML ইমেইল পাঠানোর পদ্ধতি

  4. Kotlin ব্যবহার করে Android-এ পেজিনেশন টেক্সট তৈরি করা