Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

Android में मेनू आइटम का टेक्स्ट कलर कैसे बदलें?

Android ऐप थीम के जरिए मेनू आइटम्स का टेक्स्ट कलर कस्टमाइज़ करना

styles.xml में थीम अट्रिब्यूट बदलकर सभी मेनू आइटम्स का टेक्स्ट कलर एक साथ सेट करने का तरीका।

चरण 1: नया प्रोजेक्ट बनाएं

Android Studio में File → New Project।

चरण 2: बेसिक लेआउट

res/layout/activity_main.xml (खाली RelativeLayout):

<?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="16dp"
    tools:context=".MainActivity">
</RelativeLayout>

चरण 3: वेक्टर ड्रॉएबल आइकन बनाएं (वैकल्पिक)

res/drawable/ic_icon.xml - कोई भी वेक्टर एसेट बनाएं या Android Studio के Asset Studio से जनरेट करें।

चरण 4: मेनू रिसोर्स फ़ाइल बनाएं

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>

चरण 5: styles.xml में टेक्स्ट कलर बदलें

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>
        <!-- या अधिक विशिष्ट: -->
        <item name="actionMenuTextColor">#FF000F</item>
    </style>
</resources>

चरण 6: 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 msg) {
        Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
    }
}

चरण 7: AndroidManifest.xml

थीम @style/AppTheme के साथ मानक मैनिफेस्ट।

नोट: android:textColor थीम में सेट करने से ऐप-वाइड टेक्स्ट कलर बदल जाता है। केवल मेनू के लिए actionMenuTextColor या android:actionMenuTextColor का उपयोग करें। टूलबार के लिए Toolbar.setTitleTextColor() भी उपयोगी है।

ऐप चलाएं

मेनू खोलें - सभी आइटम्स का टेक्स्ट लाल (#FF000F) रंग में दिखेगा।

Android में मेनू आइटम का टेक्स्ट कलर कैसे बदलें?
  1. C# कंसोल में टेक्स्ट का फोरग्राउंड कलर कैसे बदलें? C# कंसोल में टेक्स्ट का फोरग्राउंड कलर कैसे बदलें?

    टेक्स्ट का फोरग्राउंड कलर बदलने के लिए C# में Console.ForegroundColor प्रॉपर्टी का उपयोग करें। उदाहरण आइए एक उदाहरण देखते हैं: using System; class Demo { public static void Main (string[] args) { Console.BackgroundColor = ConsoleColor.Blue; Console.WriteLine(बैकग्राउंड कलर ब

  1. Tkinter Listbox आइटम का टेक्स्ट कैसे बदलें? Tkinter Listbox आइटम का टेक्स्ट कैसे बदलें?

    एप्लिकेशन में आइटम्स की सूची प्रदर्शित करने के लिए, Tkinter एक Listbox विजेट प्रदान करता है। इसका उपयोग आइटम्स की सूची वर्टिकली बनाने के लिए किया जाता है। जब हम एक विशिष्ट Listbox आइटम का टेक्स्ट बदलना चाहते हैं, तो हमें पहले listbox.curselection() पर पुनरावृति करके आइटम का चयन करना होगा और डिलीशन क

  1. टेक्स्ट की कैपिटलाइज़ेशन कैसे बदलें टेक्स्ट की कैपिटलाइज़ेशन कैसे बदलें

    कुछ उपयोगकर्ता हमसे सवाल पूछ रहे हैं कि क्या माइक्रोसॉफ्ट वर्ड, गूगल डॉक्स, या यहां तक कि टेक्स्ट एडिटर के बिना लोअरकेस अक्षरों को अपरकेस में (या इसके विपरीत) बदलने का कोई तरीका है। कुछ प्रभावित उपयोगकर्ता तो गलत कैपिटलाइज़ेशन में टाइप किए गए टेक्स्ट को डिलीट करने पर विचार कर रहे थे, लेकिन इस समस्या