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

অ্যান্ড্রয়েডে সেন্টার পয়েন্ট রিলেটিভ ইমেজ স্কেল অ্যানিমেশন

ইমেজ ভিউতে জুম (স্কেল) অ্যানিমেশন

এই উদাহরণটি দেখায় কীভাবে ImageView-এ সেন্টার পয়েন্ট রিলেটিভ স্কেল অ্যানিমেশন (জুম ইফেক্ট) দেওয়া যায়।

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

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

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

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

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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">
    <Button
        android:id="@+id/button"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="100dp"
        android:layout_width="150dp"
        android:text="ক্লিক করুন"
        android:layout_height="wrap_content"/>
    <ImageView
        android:id="@+id/imageView"
        android:src="@mipmap/ic_launcher_round"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</RelativeLayout>

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

package com.example.andy.myapplication;

import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.ScaleAnimation;
import android.widget.Button;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    ImageView view;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        view = findViewById(R.id.imageView);
        view.setVisibility(View.INVISIBLE);
        
        findViewById(R.id.button).setOnClickListener(v -> {
            ScaleAnimation fade_in = new ScaleAnimation(
                0f, 1f,  // X-স্কেল: ০ থেকে ১
                0f, 1f,  // Y-স্কেল: ০ থেকে ১
                Animation.RELATIVE_TO_SELF, 0.5f,  // পিভট X: সেন্টার
                Animation.RELATIVE_TO_SELF, 0.5f   // পিভট Y: সেন্টার
            );
            fade_in.setDuration(1000);
            fade_in.setFillAfter(true);
            view.startAnimation(fade_in);
        });
    }
}

ScaleAnimation কনস্ট্রাক্টর প্যারামিটারগুলো:

new ScaleAnimation(
    0f, 1f,           // fromX, toX
    0f, 1f,           // fromY, toY
    Animation.RELATIVE_TO_SELF, 0.5f,  // pivotXType, pivotXValue (৫০% = সেন্টার)
    Animation.RELATIVE_TO_SELF, 0.5f   // pivotYType, pivotYValue (৫০% = সেন্টার)
);

এটি ইমেজকে সেন্টার থেকে ছোট থেকে বড় করে জুম ইফেক্ট তৈরি করে।

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

অ্যাপটি চালান। প্রাথমিকতে ইমেজ লুকানো থাকবে। "ক্লিক করুন" বাটনে ক্লিক করলে ইমেজ সেন্টার থেকে জুম করে দেখাবে।

  1. Android-এ ImageView-এ ছবি ঘুরিয়ে দেওয়ার পদ্ধতি

  2. অ্যান্ড্রয়েডে ছবি সুস্পষ্টভাবে ঘুরানো (Smooth Image Rotation)

  3. Android-এ Left-to-Right স্লাইড অ্যানিমেশন তৈরি

  4. Android-এ ImageView-এ ছবি স্কেল করুন যাতে অনুপাত (Aspect Ratio) বজায় থাকে