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

অ্যান্ড্রয়েড TextInputLayout বাস্তবায়নের পদ্ধতি


TextInputLayout পরিচিতি

উদাহরণে যাওয়ার আগে, আমাদের জানতে হবে অ্যান্ড্রয়েডে TextInputLayout কী। TextInputLayout LinearLayout দ্বারা বর্ধিত। এটি EditText-এর জন্য একটি র‍্যাপার হিসেবে কাজ করে এবং EditText-এর জন্য ফ্লোটিং হিন্ট এনিমেশন দেখায়।

এই উদাহরণটি Android TextInputLayout বাস্তবায়নের পদ্ধতি প্রদর্শন করে।

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

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"
    xmlns:tools = "https://schemas.android.com/tools"
    android:layout_width = "match_parent"
    android:layout_height = "match_parent"
    tools:context = ".MainActivity"
    android:background = "#dde4dd"
    android:orientation = "vertical">
    <android.support.design.widget.TextInputLayout
        android:layout_width = "match_parent"
        android:layout_height = "wrap_content"
        android:id = "@+id/layoutEmail"
        android:layout_marginTop = "8dp"
        android:layout_marginStart = "8dp"
        android:layout_marginEnd = "8dp"
        style = "@style/Widget.MaterialComponents.TextInputLayout.FilledBox">
        <android.support.design.widget.TextInputEditText
            android:layout_width = "match_parent"
            android:layout_height = "wrap_content"
            android:id = "@+id/email"
            android:hint = "Enter Email id"
            android:inputType = "textEmailAddress"/>
    </android.support.design.widget.TextInputLayout>
    <android.support.design.widget.TextInputLayout
        android:layout_width = "match_parent"
        android:layout_height = "wrap_content"
        android:id = "@+id/layoutPassword"
        android:layout_marginTop = "8dp"
        android:layout_marginStart = "8dp"
        android:layout_marginEnd = "8dp"
        style = "@style/Widget.MaterialComponents.TextInputLayout.FilledBox">
        <android.support.design.widget.TextInputEditText
            android:layout_width = "match_parent"
            android:layout_height = "wrap_content"
            android:id = "@+id/password"
            android:hint = "Password"
            android:inputType = "textPassword"/>
    </android.support.design.widget.TextInputLayout>
    <Button
        android:id = "@+id/click"
        android:layout_width = "wrap_content"
        android:layout_height = "wrap_content"
        android:layout_gravity = "center"
        android:text = "Click"></Button>
</LinearLayout>

উপরোক্ত কোডে আমরা দুটি TextInputEditText এবং একটি বাটন দিয়েছি। আপনি বাটনে ক্লিক করলে এটি EditText থেকে ডেটা নেবে এবং টোস্টে দেখাবে।

ধাপ ৩: src/MainActivity.java-এ কোড যোগ করুন

package com.example.andy.myapplication;
import android.graphics.Point;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.TextureView;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    EditText email, password;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        email = findViewById(R.id.email);
        password = findViewById(R.id.password);
        Button click = findViewById(R.id.click);
        click.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (!email.getText().toString().isEmpty() && (!password.getText().toString().isEmpty())) {
                    Toast.makeText(MainActivity.this, "you have entered email id " + email.getText().toString() + "Password " + password.getText().toString(), Toast.LENGTH_LONG).show();
                } else {
                    email.setError("Please Enter Email id");
                    password.setError("Please Enter Pass word");
                }
            }
        });
    }
}

ধাপ ৪: build.gradle-এ ডিজাইন সাপোর্ট লাইব্রেরি নির্ভরতা যোগ করুন

apply plugin: 'com.android.application'
android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.andy.myapplication"
        minSdkVersion 15
        targetSdkVersion 28
        compileSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:design:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করুন। আমি ধরে নিচ্ছি আপনার আসল Android মোবাইল ডিভাইস কম্পিউটারের সাথে সংযুক্ত আছে। Android Studio থেকে অ্যাপ চালাতে, আপনার প্রজেক্টের একটি এক্টিভিটি ফাইল খুলুন এবং টুলবার থেকে Run আইকনে ক্লিক করুন। আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপর আপনার মোবাইল ডিভাইস চেক করুন যা আপনার ডিফল্ট স্ক্রিন প্রদর্শন করবে।

অ্যান্ড্রয়েড TextInputLayout বাস্তবায়নের পদ্ধতি

উপরোক্ত ফলাফল প্রাথমিক স্ক্রিন। এখন কিছু ডেটা লিখে বাটনে ক্লিক করুন:

অ্যান্ড্রয়েড TextInputLayout বাস্তবায়নের পদ্ধতি

এখন সকল EditText ডেটা মুছে বাটনে ক্লিক করুন। এটি নিচের ফলাফল দেখাবে:

অ্যান্ড্রয়েড TextInputLayout বাস্তবায়নের পদ্ধতি


  1. অ্যান্ড্রয়েডে অ্যালার্ম ম্যানেজার ইমপ্লিমেন্টেশন

  2. অ্যান্ড্রয়েডে বটম শীট (Bottom Sheet) উইজেট ইমপ্লিমেন্ট করা

  3. অ্যান্ড্রয়েডে কাস্টম AlertDialog ভিউ কীভাবে বাস্তবায়ন করবেন?

  4. Android-এ RecyclerView-এ অসীম লিস্ট (Endless Scrolling) বাস্তবায়ন