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

एंड्रॉइड में बटन क्लिक पर उसका रंग कैसे बदलें?

बटन क्लिक पर बैकग्राउंड कलर बदलना

यह सरल उदाहरण दिखाता है कि setOnClickListener और setBackgroundColor() का उपयोग करके बटन दबाने पर उसका बैकग्राउंड कलर कैसे बदलें।

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

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

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

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    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:layout_height="match_parent"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="रंग बदलने के लिए क्लिक करें!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:ignore="HardcodedText" />

</androidx.constraintlayout.widget.ConstraintLayout>

चरण 3: MainActivity.java

package app.com.sample;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button = findViewById(R.id.button);
        button.setOnClickListener(v -> {
            // colors.xml में परिभाषित कलर का उपयोग
            button.setBackgroundColor(getResources().getColor(R.color.colorPrimary));
        });
    }
}

चरण 4: colors.xml में कलर जोड़ें (res/values/colors.xml)

<resources>
    <color name="colorPrimary">#6200EE</color>
    <color name="colorPrimaryDark">#3700B3</color>
    <color name="colorAccent">#03DAC5</color>
</resources>

चरण 5: AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="app.com.sample">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

बेहतर विकल्प: स्टेट लिस्ट ड्रॉएबल (सेलेक्टर)

XML में res/drawable/button_selector.xml बनाएं:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="https://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:color="@color/colorPrimaryDark" />
    <item android:state_focused="true" android:color="@color/colorAccent" />
    <item android:color="@color/colorPrimary" />
</selector>

फिर लेआउट में: android:background="@drawable/button_selector"

आउटपुट

बटन क्लिक करने पर उसका बैकग्राउंड कलर प्राइमरी कलर में बदल जाएगा।

एंड्रॉइड में बटन क्लिक पर उसका रंग कैसे बदलें?

एंड्रॉइड में बटन क्लिक पर उसका रंग कैसे बदलें?

  1. एंड्रॉइड में डायलॉग को बटन क्लिक पर बंद होने से कैसे रोकें? एंड्रॉइड में डायलॉग को बटन क्लिक पर बंद होने से कैसे रोकें?

    एंड्रॉइड में AlertDialog को बटन क्लिक पर ऑटो-डिसमिस होने से रोकना डिफ़ॉल्ट रूप से, AlertDialog के किसी भी बटन (पॉजिटिव, नेगेटिव, न्यूट्रल) पर क्लिक करने से डायलॉग **अपने आप बंद (dismiss)** हो जाता है। कई बार हमें वैलिडेशन के बाद ही बंद करना होता है (उदाहरण: खाली फील्ड चेक)। इसके लिए बटन का OnClickLi

  1. एंड्रॉइड में डायनामिकली बटन कैसे जोड़ें? एंड्रॉइड में डायनामिकली बटन कैसे जोड़ें?

    एंड्रॉइड में रनटाइम पर प्रोग्रामेटिकली बटन (या कोई व्यू) जोड़ना कभी-कभी लेआउट XML में नहीं, बल्कि डेटा/शर्तों के आधार पर रनटाइम पर व्यूज जोड़ने पड़ते हैं। इसके लिए: **पैरेंट व्यूग्रुप प्राप्त करें → नया व्यू बनाएं → LayoutParams सेट करें → addView() कॉल करें।** चरण 1: नया प्रोजेक्ट बनाएं Android St

  1. Android ListView का रंग और फॉन्ट कैसे बदलें? Android ListView का रंग और फॉन्ट कैसे बदलें?

    Android ListView के रंग और फॉन्ट कस्टमाइज़ करना यह ट्यूटोरियल दिखाता है कि कैसे कस्टम एडाप्टर और लेआउट का उपयोग करके ListView आइटम्स के टेक्स्ट रंग, बैकग्राउंड रंग, और फॉन्ट स्टाइल बदले जाते हैं। चरण 1: प्रोजेक्ट बनाएं Android Studio में नया प्रोजेक्ट बनाएं। चरण 2: मेन लेआउट res/layout/activity_ma