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

অ্যান্ড্রয়েডে মেনু আইটেমের টেক্সট রঙ পরিবর্তন করার পদ্ধতি

থিম এবং স্টাইল ব্যবহার করে অপশন মেনু টেক্সট রঙ কাস্টমাইজ করা

অ্যান্ড্রয়েড অপশন মেনুর টেক্সট রঙ পরিবর্তন করার সবচেয়ে সহজ পদ্ধতি হলো অ্যাপ থিমে `android:textColor` আট্রিবিউট সেট করা। এটি মেনু আইটেমের পাশাপাশি অন্যান্য টেক্সট কম্পোনেন্টেও প্রয়োগ হবে।

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

স্ট্যান্ডার্ড অ্যান্ড্রয়েড প্রজেক্ট।

ধাপ ২: মিনিমাল লেআউট

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"
    android:padding="16sp"
    tools:context=".MainActivity">
</RelativeLayout>

ধাপ ৩: ভেক্টর অ্যাসেট তৈরি করুন (ঐচ্ছিক)

Res/drawable-এ রাইট-ক্লিক → New → Vector Asset → একটি আইকন বেছে নিন (যেমন `ic_icon`)。

ধাপ ৪: মেনু রিসোর্স ফাইল

res/menu/sample_menu.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto">
    <item android:id="@+id/item1" android:icon="@drawable/ic_icon" android:title="Item 1" app:showAsAction="ifRoom" />
    <item android:id="@+id/item2" android:title="Item 2" app:showAsAction="never" />
    <item android:id="@+id/item3" android:title="Item 3" app:showAsAction="never" />
    <item android:id="@+id/item4" android:title="Item 4" app:showAsAction="never" />
    <item android:id="@+id/item5" android:title="Item 5" app:showAsAction="never" />
</menu>

ধাপ ৫: থিমে টেক্সট রঙ সেট করুন

res/values/styles.xml - এপ্লিকেশন থিমে যোগ করুন:

<resources>
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <!-- মেনু টেক্সট রঙ পরিবর্তন -->
        <item name="android:textColor">#FF000F</item>
    </style>
</resources>

ধাপ ৬: মেনু হ্যান্ডলিং

src/MainActivity.java:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.sample_menu, menu);
        return true;
    }
    
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.item1: showToast("Item 1 selected"); return true;
            case R.id.item2: showToast("Item 2 selected"); return true;
            case R.id.item3: showToast("Item 3 selected"); return true;
            case R.id.item4: showToast("Item 4 selected"); return true;
            case R.id.item5: showToast("Item 5 selected"); return true;
            default: return super.onOptionsItemSelected(item);
        }
    }
    
    private void showToast(String message) {
        Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
    }
}

বিকল্প পদ্ধতি: SpannableString (প্রোগ্রাম্যাটিক্যালি)

যদি শুধু নির্দিষ্ট মেনু আইটেমের রঙ বদলাতে চান:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.sample_menu, menu);
    
    MenuItem item = menu.findItem(R.id.item1);
    SpannableString spannableString = new SpannableString(item.getTitle());
    spannableString.setSpan(new ForegroundColorSpan(Color.RED), 0, spannableString.length(), 0);
    item.setTitle(spannableString);
    
    return true;
}

Toolbar ব্যবহার করলে (AppCompat)

যদি Toolbar ব্যবহার করেন, `app:titleTextColor` বা `app:actionMenuTextColor` ব্যবহার করুন:

<android.support.v7.widget.Toolbar
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    app:titleTextColor="@android:color/white"
    app:actionMenuTextColor="@android:color/white" />
অ্যান্ড্রয়েডে মেনু আইটেমের টেক্সট রঙ পরিবর্তন করার পদ্ধতি
  1. C#-এ কনসোল টেক্সটের ব্যাকগ্রাউন্ড কালার পরিবর্তন করা

  2. C#-এ কনসোল টেক্সটের ফোরগ্রাউন্ড কালার পরিবর্তন করা

  3. Tkinter Listbox আইটেমের টেক্সট কীভাবে পরিবর্তন করবেন?

  4. টেক্সটের ক্যাপিটালাইজেশন কীভাবে পরিবর্তন করবেন