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

অ্যান্ড্রয়েডে EditText ফোকাস হারালে সেটি জানার উপায়

EditText ফোকাস হারানো শনাক্ত করা

এই উদাহরণটি দেখায় কীভাবে EditText ফোকাস হারালে সেটি জানা যায়।

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

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

ধাপ ২: লেআউট ফাইলে কোড যোগ করুন

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:gravity="center"
    android:orientation="vertical">
    <EditText
        android:id="@+id/editText"
        android:hint="ফোকাস হারানোর উদাহরণ"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <Button
        android:id="@+id/removeFocus"
        android:text="ফোকাস সরান"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    <Button
        android:id="@+id/gainFocus"
        android:text="ফোকাস দিন"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

এখানে একটি EditText এবং দুটি বাটন রয়েছে। "ফোকাস সরান" বাটন EditText-এর ফোকাস সরাবে এবং "ফোকাস দিন" বাটন ফোকাস ফিরিয়ে দেবে।

ধাপ ৩: MainActivity.java-তে কোড যোগ করুন

package com.example.andy.myapplication;

import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    EditText editText;
    Button removeFocus, gainFocus;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        editText = findViewById(R.id.editText);
        removeFocus = findViewById(R.id.removeFocus);
        gainFocus = findViewById(R.id.gainFocus);
        
        gainFocus.setOnClickListener(v -> {
            editText.setFocusableInTouchMode(true);
            editText.setFocusable(true);
            editText.requestFocus();
        });
        
        removeFocus.setOnClickListener(v -> {
            editText.setFocusableInTouchMode(false);
            editText.setFocusable(false);
        });
        
        editText.setOnFocusChangeListener((v, hasFocus) -> {
            if (!hasFocus) {
                Toast.makeText(MainActivity.this, "ফোকাস হারিয়ে গেছে", Toast.LENGTH_LONG).show();
            } else {
                Toast.makeText(MainActivity.this, "ফোকাস পেয়েছে", Toast.LENGTH_LONG).show();
            }
        });
    }
}

ফোকাস সরানোর কোড:

editText.setFocusableInTouchMode(false);
editText.setFocusable(false);

ফোকাস ফিরিয়ে দেওয়ার কোড:

editText.setFocusableInTouchMode(true);
editText.setFocusable(true);

ফোকাস পরিবর্তন শনাক্ত করার কোড:

editText.setOnFocusChangeListener((v, hasFocus) -> {
    if (!hasFocus) {
        Toast.makeText(MainActivity.this, "ফোকাস হারিয়ে গেছে", Toast.LENGTH_LONG).show();
    } else {
        Toast.makeText(MainActivity.this, "ফোকাস পেয়েছে", Toast.LENGTH_LONG).show();
    }
});

অ্যাপ্লিকেশন চালান

অ্যাপটি চালান এবং "ফোকাস সরান" বাটনে ক্লিক করলে "ফোকাস হারিয়ে গেছে" বার্তা দেখাবে। "ফোকাস দিন" বাটনে ক্লিক করলে আবার ফোকাস ফিরে যাবে।

  1. অ্যান্ড্রয়েডে EditText খালি কিনা চেক করার পদ্ধতি

  2. Android-এ URL এনকোড করার পদ্ধতি

  3. Android Switch উইজেট কাস্টমাইজ করার পদ্ধতি (স্টাইলিং)

  4. Android Focus Mode মাস্টার করুন: ধাপে ধাপে সম্পূর্ণ গাইড