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

Android-এ গোলাকার কোণার কাস্টম ডায়লগ তৈরি করার উপায়

কাস্টম ডায়লগ با গোলাকার কোণা

এই উদাহরণে দেখানো হয়েছে কিভাবে Android-এ গোলাকার কোণাযুক্ত কাস্টম ডায়লগ তৈরি করা যায়।

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

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">
    <Button
        android:id="@+id/customDialog"
        android:text="Custom Dialog"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

এখানে একটি বাটন দেওয়া হয়েছে, যেটিতে ক্লিক করলে কাস্টম ডায়লগটি প্রদর্শিত হবে।

ধাপ ৩: MainActivity.java ফাইল

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

package com.example.andy.myapplication;

import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        findViewById(R.id.customDialog).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                final AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this, R.style.CustomAlertDialog);
                ViewGroup viewGroup = findViewById(android.R.id.content);
                View dialogView = LayoutInflater.from(v.getContext()).inflate(R.layout.customview, viewGroup, false);
                Button buttonOk = dialogView.findViewById(R.id.buttonOk);
                builder.setView(dialogView);
                final AlertDialog alertDialog = builder.create();
                buttonOk.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        alertDialog.dismiss();
                    }
                });
                alertDialog.show();
            }
        });
    }
}

ধাপ ৪: কাস্টম ভিউ লেআউট (customview.xml)

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

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:padding="16dp">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Success"
            android:textAlignment="center"
            android:textAppearance="@style/TextAppearance.AppCompat.Headline" />
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla eu erat tincidunt lacus fermentum rutrum."
            android:textAlignment="center"
            android:textAppearance="@style/TextAppearance.AppCompat.Medium" />
        <Button
            android:id="@+id/buttonOk"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginTop="15dp"
            android:background="@color/colorPrimary"
            android:text="Ok"
            android:textColor="#FFF" />
    </LinearLayout>
</LinearLayout>

ধাপ ৫: কাস্টম থিম (styles.xml)

res/styles.xml ফাইলে নিচের স্টাইলটি যোগ করুন:

<style name="CustomAlertDialog" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="android:windowBackground">@drawable/popup_background</item>
</style>

ধাপ ৬: ড্র্যাবল রিসোর্স (popup_background.xml)

res/drawable/popup_background.xml ফাইলটি তৈরি করে নিচের কোডটি যোগ করুন:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="https://schemas.android.com/apk/res/android">
    <solid android:color="#FFFFFF" />
    <corners android:radius="6dp" />
</shape>

এখানে corners অ্যাট্রিবিউটে 6dp রেডিয়াস দিয়ে গোলাকার কোণা তৈরি করা হয়েছে।

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

অ্যাপটি রান করলে প্রথমে নিচের স্ক্রিনটি দেখাবে:

Android-এ গোলাকার কোণার কাস্টম ডায়লগ তৈরি করার উপায়

বাটনে ক্লিক করলে গোলাকার কোণাযুক্ত কাস্টম ডায়লগটি প্রদর্শিত হবে:

Android-এ গোলাকার কোণার কাস্টম ডায়লগ তৈরি করার উপায়

  1. অ্যান্ড্রয়েডে গোলাকার কোণাযুক্ত EditText তৈরি করার পদ্ধতি

  2. অ্যান্ড্রয়েডে বাটন অদৃশ্য বা মুছে ফেলার পদ্ধতি

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

  4. অ্যান্ড্রয়েডে বাটনের কোণাবৃত্তাকার কর্নার তৈরি করার পদ্ধতি