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

टूलबार आइकन पर क्लिक इवेंट कैसे इम्प्लीमेंट करें?

एंड्रॉइड टूलबार/एक्शन बार में होम/नेविगेशन आइकन क्लिक हैंडल करना

यह ट्यूटोरियल दिखाता है कि टूलबार/एक्शन बार में कस्टम नेविगेशन आइकन (होम/बैक) सेट करके उसका क्लिक इवेंट कैसे हैंडल करें।

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

Android Studio में File → New Project चुनें।

चरण 2: लेआउट (res/layout/activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:gravity="center"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <TextView
        android:id="@+id/text"
        android:textSize="30sp"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>

चरण 3: MainActivity कोड (java/MainActivity.java)

package com.example.myapplication;

import android.os.Bundle;
import android.view.MenuItem;
import android.widget.TextView;
import androidx.annotation.NonNull;
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.text);
        
        if (getSupportActionBar() != null) {
            getSupportActionBar().setTitle("होम");
            getSupportActionBar().setSubtitle("सैराम");
            
            // होम/अप बटन दिखाएं
            getSupportActionBar().setDisplayHomeAsUpEnabled(true);
            
            // कस्टम आइकन सेट करें (res/drawable/logo.png होना चाहिए)
            getSupportActionBar().setHomeAsUpIndicator(R.drawable.logo);
        }
        
        textView.setText("कस्टम आइकन इनेबल्ड - क्लिक करें");
    }

    // मेनू आइटम क्लिक हैंडलर
    @Override
    public boolean onOptionsItemSelected(@NonNull MenuItem item) {
        if (item.getItemId() == android.R.id.home) {
            // होम/बैक आइकन क्लिक हुआ
            finish(); // एक्टिविटी बंद करें
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

आवश्यक संसाधन

res/drawable/logo.png या वेक्टर ड्रॉएबल जोड़ें (24x24dp अनुशंसित)।

मॉडर्न दृष्टिकोण: Toolbar उपयोग करें

<!-- layout -->
<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    android:navigationIcon="@drawable/ic_custom_back" />

// Activity में
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
toolbar.setNavigationOnClickListener(v -> {
    // सीधा क्लिक हैंडलर - onOptionsItemSelected की आवश्यकता नहीं
    onBackPressed();
});

कस्टम एक्शन आइकन (मेनू आइटम)

<!-- res/menu/menu_main.xml -->
<menu xmlns:android="..."
    xmlns:app="https://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/action_settings"
        android:icon="@drawable/ic_settings"
        android:title="सेटिंग्स"
        app:showAsAction="always" />
    <item
        android:id="@+id/action_search"
        android:icon="@drawable/ic_search"
        android:title="खोज"
        app:showAsAction="ifRoom" />
</menu>

// Activity में
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
    switch (item.getItemId()) {
        case R.id.action_settings:
            openSettings();
            return true;
        case R.id.action_search:
            openSearch();
            return true;
        case android.R.id.home:
            finish();
            return true;
    }
    return super.onOptionsItemSelected(item);
}

ऐप टेस्ट करें

चलाएं - एक्शन बार में कस्टम लोगो/आइकन (बाएं) दिखेगा, क्लिक करने पर एक्टिविटी बंद होगी।

  1. Android Toolbar में SearchView का उपयोग कैसे करें? Android Toolbar में SearchView का उपयोग कैसे करें?

    Android Toolbar/ActionBar में SearchView जोड़कर ListView फ़िल्टर करना टूलबार में सर्च आइकन जोड़कर ListView डेटा को रियल-टाइम फ़िल्टर करने का पूरा उदाहरण। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project। चरण 2: लेआउट में Toolbar और ListView res/layout/activity_main.xml: <?xml ve

  1. एंड्रॉइड में बॉटम शीट (BottomSheet) विजेट कैसे इम्प्लीमेंट करें? एंड्रॉइड में बॉटम शीट (BottomSheet) विजेट कैसे इम्प्लीमेंट करें?

    एंड्रॉइड में BottomSheetBehavior के साथ बॉटम शीट इम्प्लीमेंट करना Bottom Sheet मटीरियल डिज़ाइन कंपोनेंट है जो स्क्रीन के नीचे से स्लाइड होकर कंटेंट दिखाता है। दो प्रकार हैं: Modal Bottom Sheet — डायलॉग जैसा, बैकग्राउंड डिम, बाहर टैप करके बंद होता है। BottomSheetDialogFragment से बनता है। Persistent

  1. Android ऐप में शेक इवेंट का पता कैसे लगाएं? Android ऐप में शेक इवेंट का पता कैसे लगाएं?

    Android में शेक इवेंट डिटेक्शन का पूरा गाइड यह ट्यूटोरियल आपको दिखाएगा कि Android ऐप में एक्सेलेरोमीटर सेंसर का उपयोग करके शेक जेस्चर का पता कैसे लगाया जाता है। यह फीचर गेमिंग ऐप्स, म्यूजिक प्लेयर्स या किसी भी ऐसे ऐप के लिए उपयोगी हो सकता है जहां यूजर इंटरैक्शन के लिए फिजिकल शेक का उपयोग किया जाता ह