কিছু পরিস্থিতিতে, আমাদের EditText-কে কিছু ক্যারেক্টারের জন্য সীমাবদ্ধ করতে হয়। এই সমস্যা সমাধান করতে, এই উদাহরণটি EditText Changed Listener-এ ক্যারেক্টার কাউন্ট করার পদ্ধতি প্রদর্শন করে।
ধাপ ১: নতুন প্রজেক্ট তৈরি করুন
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:background = "#33FFFF00"
android:orientation = "vertical">
<EditText
android:id = "@+id/text"
android:textSize = "18sp"
android:layout_width = "match_parent"
android:layout_height = "wrap_content" />
</LinearLayout>
উপরোক্ত কোডে, আমরা একটি EditText নেওয়া হয়েছে। এটি লিখা ক্যারেক্টারটির দৈর্ঘ্য চেক করবে, যদি এটি ৫ এর বেশি হয় তবে এরর মেসেজ দেখাবে।
ধাপ ৩: src/MainActivity.java-এ কোড যোগ করুন
package com.example.andy.myapplication;
import android.app.ActivityManager;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.os.VibrationEffect;
import android.os.Vibrator;
import android.support.annotation.RequiresApi;
import android.support.v4.app.FragmentManager;
import android.support.v7.app.AppCompatActivity;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
int view = R.layout.activity_main;
EditText text;
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(view);
text = findViewById(R.id.text);
text.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) { }
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) { }
@Override
public void afterTextChanged(Editable s) {
if (s.toString().length() > 5) {
text.setError("It allows only 5 character");
} else {
text.setError(null);
}
}
});
}
}
উপরোক্ত কোডে, আমরা TextChangedListener ব্যবহার করেছি, টেক্সট পরিবর্তনের পর আমরা টেক্সট যাচাই করছি:
text.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) { }
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) { }
@Override
public void afterTextChanged(Editable s) {
if (s.toString().length() > 5) {
text.setError("It allows only 5 character");
} else {
text.setError(null);
}
}
});
আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করুন। আমি ধরে নিচ্ছি আপনার আসল Android মোবাইল ডিভাইস কম্পিউটারের সাথে সংযুক্ত আছে। Android Studio থেকে অ্যাপ চালাতে, আপনার প্রজেক্টের একটি এক্টিভিটি ফাইল খুলুন এবং টুলবার থেকে Run আইকনে ক্লিক করুন। আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপর আপনার মোবাইল ডিভাইস চেক করুন যা আপনার ডিফল্ট স্ক্রিন প্রদর্শন করবে।

আপনি ৫ ক্যারেক্টার লিখলে, এটি কোনো এরর দেখাবে না। যদি আপনি ৫ ক্যারেক্টারের বেশি লিখেন। তবে এটি নিচের মত এরর দেখাবে:
