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

অ্যান্ড্রয়েডে রিসোর্স আইডি (Resource ID) দিয়ে রিসোর্স নাম পাওয়া

getResources().getResourceName() ব্যবহার করে রিসোর্স নাম বের করা

এই ছোট উদাহরণে দেখানো হয়েছে কিভাবে একটি View-এর রিসোর্স আইডি (যেমন R.id.textView) থেকে স্ট্রিং রূপে রিসোর্স নাম (যেমন "com.example.sample:id/textView") পাওয়া যায়। ডিবাগিং বা ডাইনামিক রিসোর্স হ্যান্ডলিং-এ কাজে লাগে।

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

Android Studio-তে নতুন প্রজেক্ট শুরু করুন।

ধাপ ২: লেআউট (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"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:textSize="16sp"
        android:textStyle="bold" />

</RelativeLayout>

ধাপ ৩: MainActivity.java

package com.example.sample;

import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    TextView textView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textView = findViewById(R.id.textView);
        
        // View-এর রিসোর্স আইডি (int)
        int resId = textView.getId();
        
        // রিসোর্স নাম পান (প্যাকেজ:name/type/entry)
        String resourceName = getResources().getResourceName(resId);
        
        // ফলাফল TextView-এ দেখান
        textView.setText("রিসোর্স আইডি: " + resourceName);
    }
}

আউটপুট উদাহরণ

রিসোর্স আইডি: com.example.sample:id/textView

ব্যবহার ক্ষেত্র

  • ডিবাগিং: রানটাইমে কোন View-এর আইডি যাচাই করতে।
  • ডাইনামিক রিসোর্স লোডিং: আইডি থেকে রিসোর্স টাইপ (id, layout, drawable, string ইত্যাদি) পার্স করতে।
  • টেস্ট অটোমেশন: UI টেস্টে এলিমেন্ট আইডেন্টিফাই করতে।

সম্পর্কিত মেথড

  • getResources().getResourceEntryName(resId) — শুধু এন্ট্রি নাম (যেমন "textView")
  • getResources().getResourceTypeName(resId) — টাইপ নাম (যেমন "id")
  • getResources().getResourcePackageName(resId) — প্যাকেজ নাম (যেমন "com.example.sample")

ফলাফল

অ্যাপ চালু হলে TextView-এ রিসোর্সের পূর্ণ নাম দেখাবে: com.example.sample:id/textView।

অ্যান্ড্রয়েডে রিসোর্স আইডি (Resource ID) দিয়ে রিসোর্স নাম পাওয়া
getResourceName() আউটপুট
  1. Android TextView-এ startsWith() ব্যবহার কীভাবে করবেন?

  2. Android TextView-এ split() ব্যবহার কীভাবে করবেন?

  3. Android TextView-এ replaceAll() ব্যবহার কীভাবে করবেন?

  4. অ্যান্ড্রয়েডে ইমেজের নাম জানা থাকলে রিসোর্স ID পাওয়ার পদ্ধতি