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

অ্যান্ড্রয়েডে পাসওয়ার্ড হাইড এবং শো করার পদ্ধতি


অনেক পরিস্থিতিতে, পাসওয়ার্ড লিখতে সময় বা লিখার পর পাসওয়ার্ড দেখানোর প্রয়োজন হয়। এই উদাহরণটি হাইড এবং ভিউ পাসওয়ার্ডের মধ্যে সুইচ করার পদ্ধতি প্রদর্শন করে।

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

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>
    <LinearLayout
        android:layout_width = "match_parent"
        android:gravity = "center"
        android:layout_height = "wrap_content">
        <Button
            android:id = "@+id/passwordVisible"
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content"
            android:text = "Show"></Button>
        <Button
            android:id = "@+id/click"
            android:layout_width = "wrap_content"
            android:layout_height = "wrap_content"
            android:text = "Click"></Button>
    </LinearLayout>
</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.text.method.PasswordTransformationMethod;
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 {
    Button PasswordVisble;
    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);
        PasswordVisble = findViewById(R.id.passwordVisible);
        PasswordVisble.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (password.getText().toString().isEmpty()) {
                    password.setError("Please Enter Pass word");
                } else {
                    if (PasswordVisble.getText().toString().equals("Show")) {
                        PasswordVisble.setText("Hide");
                        password.setTransformationMethod(null);
                    } else {
                        PasswordVisble.setText("Show");
                        password.setTransformationMethod(new PasswordTransformationMethod());
                    }
                }
            }
        });
        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");
                }
            }
        });
    }
}

পাসওয়ার্ড দেখানোর এবং হাইড করার জন্য আমরা PasswordTransformationMethod ব্যবহার করছি:

if (PasswordVisble.getText().toString().equals("Show")) {
    PasswordVisble.setText("Hide");
    password.setTransformationMethod(null);
} else {
    PasswordVisble.setText("Show");
    password.setTransformationMethod(new PasswordTransformationMethod());
}

উপরোক্ত কোডের অর্থ:

পাসওয়ার্ড দেখান: password.setTransformationMethod(null);
পাসওয়ার্ড হাইড করুন: password.setTransformationMethod(new PasswordTransformationMethod());

ধাপ ৪: 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 আইকনে ক্লিক করুন। আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপর আপনার মোবাইল ডিভাইস চেক করুন যা আপনার ডিফল্ট স্ক্রিন প্রদর্শন করবে।

অ্যান্ড্রয়েডে পাসওয়ার্ড হাইড এবং শো করার পদ্ধতি

এটি প্রাথমিক স্ক্রিন এবং পাসওয়ার্ডে ইনপুট দিয়ে শো বাটনে ক্লিক করলে এটি উপরে দেখানো এরর দেখাবে।

অ্যান্ড্রয়েডে পাসওয়ার্ড হাইড এবং শো করার পদ্ধতি

এখন পাসওয়ার্ড এডিট টেক্সটে কিছু ডেটা লিখে শো বাটনে ক্লিক করলে নিচের আউটপুট দেখাবে:

অ্যান্ড্রয়েডে পাসওয়ার্ড হাইড এবং শো করার পদ্ধতি


  1. অ্যান্ড্রয়েড সুরক্ষিত করুন: ফাইল, ছবি ও ভিডিও হাইড করার এক্সপার্ট টিপস

  2. Android Visibility Listeners মাস্টার করুন: ভিউ দৃশ্যমানতা ট্র্যাক করার পদ্ধতি ও কারণ

  3. আইফোন ও অ্যান্ড্রয়েডের মধ্যে সিমলেস ফাইল শেয়ারিং: দ্রুত, সুরক্ষিত পদ্ধতি

  4. PC এবং অ্যান্ড্রয়েড ফোনের মধ্যে সহজে ফাইল ট্রান্সফার: ধাপে ধাপে গাইড