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

एक्टिविटी लैंडस्केप मोड में है कैसे जांचें?

एंड्रॉइड में लैंडस्केप मोड विशेष रूप से जांचना

यह ट्यूटोरियल दिखाता है कि केवल लैंडस्केप ओरिएंटेशन का पता कैसे लगाएं। पिछले आर्टिकल के समान है लेकिन केवल लैंडस्केप पर फोकस करता है।

चरण 1-2: प्रोजेक्ट और लेआउट

पिछले आर्टिकल (ID 1005061169) के समान - ConstraintLayout में TextView।

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

package com.example.myapplication;

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

public class MainActivity extends AppCompatActivity {
    TextView conf;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        conf = findViewById(R.id.conf);
    }
    
    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
            conf.setText("यह लैंडस्केप मोड है");
        }
        // पोर्ट्रेट पर कुछ नहीं करते - पिछला टेक्स्ट रहता है
    }
}

चरण 4: AndroidManifest.xml

पिछले आर्टिकल के समान - android:configChanges="orientation|screenSize|keyboardHidden"

बेहतर दृष्टिकोण: दोनों मोड हैंडल करें

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    String msg = (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) 
        ? "लैंडस्केप मोड" 
        : "पोर्ट्रेट मोड";
    conf.setText(msg);
}

उपयोग केस

  • वीडियो प्लेयर - लैंडस्केप पर फुलस्क्रीन
  • गेम्स - लैंडस्केप-ओनली लॉक
  • डैशबोर्ड - लैंडस्केप पर मल्टी-कॉलम लेआउट
  • कैमरा ऐप्स - ओरिएंटेशन-आधारित UI

प्रोग्रामेटिक ओरिएंटेशन लॉक

// केवल लैंडस्केप
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

// केवल पोर्ट्रेट
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

// सेंसर-आधारित (ऑटो-रोटेट)
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);

ऐप टेस्ट करें

डिवाइस को लैंडस्केप में घुमाएं - "लैंडस्केप मोड" दिखेगा। पोर्ट्रेट पर वापस घुमाने पर टेक्स्ट नहीं बदलेगा (यह कोड केवल लैंडस्केप जांचता है)।

  1. एंड्रॉइड में EditText खाली है या नहीं कैसे जांचें? एंड्रॉइड में EditText खाली है या नहीं कैसे जांचें?

    एंड्रॉइड में EditText खाली/वैलिड है या नहीं जांचना — बेस्ट प्रैक्टिसेज यूज़र इनपुट वैलिडेट करना हर ऐप की बुनियादी जरूरत है। TextUtils.isEmpty() सबसे सरल तरीका है, लेकिन **सिर्फ खाली स्ट्रिंग ही नहीं, व्हाइटस्पेस-ओनली स्ट्रिंग भी अमान्य माननी चाहिए**। यह ट्यूटोरियल सभी सामान्य पैटर्न कवर करता है। चर

  1. Android ऐप में पारदर्शी एक्टिविटी कैसे बनाएं? Android ऐप में पारदर्शी एक्टिविटी कैसे बनाएं?

    पारदर्शी (Translucent) एक्टिविटी बनाना यह उदाहरण दर्शाता है कि कस्टम थीम का उपयोग करके एक्टिविटी को पारदर्शी कैसे बनाएं, जिससे पिछली एक्टिविटी या होम स्क्रीन दिखती रहे। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनें। चरण 2: styles.xml में पारदर्शी थीम <resources>

  1. एंड्रॉइड पर स्प्लिट स्क्रीन मोड का उपयोग कैसे करें एंड्रॉइड पर स्प्लिट स्क्रीन मोड का उपयोग कैसे करें

    एंड्रॉइड फोन पर, स्प्लिट स्क्रीन मोड आपको एक ही समय में अपने फोन पर दो ऐप्स देखने की अनुमति देता है। यदि आप एक ऐप से दूसरे ऐप में टेक्स्ट कॉपी और पेस्ट करने की कोशिश कर रहे हैं या ट्विटर स्क्रॉल करते समय वीडियो देखना चाहते हैं, तो आप स्प्लिट स्क्रीन मोड के साथ ऐसा कर सकते हैं। स्प्लिट स्क्रीन मोड क