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

Android में प्रोग्रामेटिकली स्क्रीन DPI/डेंसिटी कैसे प्राप्त करें?

Android में DisplayMetrics से स्क्रीन डेंसिटी (DPI) प्राप्त करना

बटन क्लिक पर डिवाइस की स्क्रीन डेंसिटी (ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi) पता करने का तरीका।

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

Android Studio में File → New Project।

चरण 2: लेआउट में TextView और Button

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"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="180dp"
        android:text="Density will show here"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <Button
        android:id="@+id/btnShowDensity"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/textView"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="20dp"
        android:text="Click to Find Screen Density" />

</RelativeLayout>

चरण 3: MainActivity.java में डेंसिटी कैलकुलेशन

import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    Button button;
    TextView textView;
    DisplayMetrics displayMetrics;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button = findViewById(R.id.btnShowDensity);
        textView = findViewById(R.id.textView);
        displayMetrics = new DisplayMetrics();

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);

                float density = getResources().getDisplayMetrics().density;
                int densityDpi = getResources().getDisplayMetrics().densityDpi;
                int widthPixels = displayMetrics.widthPixels;
                int heightPixels = displayMetrics.heightPixels;

                String info = "Density (logical): " + density + "\n" +
                        "Density DPI: " + densityDpi + "\n" +
                        "Width (px): " + widthPixels + "\n" +
                        "Height (px): " + heightPixels + "\n" +
                        "Density Bucket: " + getDensityBucket(densityDpi);

                textView.setText(info);
            }
        });
    }

    private String getDensityBucket(int dpi) {
        if (dpi <= 120) return "ldpi";
        else if (dpi <= 160) return "mdpi";
        else if (dpi <= 240) return "hdpi";
        else if (dpi <= 320) return "xhdpi";
        else if (dpi <= 480) return "xxhdpi";
        else return "xxxhdpi";
    }
}

चरण 4: AndroidManifest.xml

मानक मैनिफेस्ट।

ऐप चलाएं

"Click to Find Screen Density" बटन दबाएं - डेंसिटी, DPI, रिज़ॉल्यूशन और बकेट दिखेगा।

Android में प्रोग्रामेटिकली स्क्रीन DPI/डेंसिटी कैसे प्राप्त करें? Android में प्रोग्रामेटिकली स्क्रीन DPI/डेंसिटी कैसे प्राप्त करें?
  1. Android Emulator का IP एड्रेस कैसे प्राप्त करें? Android Emulator का IP एड्रेस कैसे प्राप्त करें?

    WifiManager का उपयोग करके Android एमुलेटर/डिवाइस का स्थानीय IP एड्रेस प्रोग्रामेटिकली प्राप्त करने का तरीका। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में नया प्रोजेक्ट बनाएं। चरण 2: लेआउट res/layout/activity_main.xml: <?xml version=1.0 encoding=utf-8?> <RelativeLayout xmlns:android=https

  1. प्रोग्रामेटिकली वर्तमान Android SDK वर्जन कैसे प्राप्त करें? प्रोग्रामेटिकली वर्तमान Android SDK वर्जन कैसे प्राप्त करें?

    Android में प्रोग्रामेटिकली SDK वर्जन जानना यह ट्यूटोरियल दिखाता है कि कैसे रनटाइम पर डिवाइस का API लेवल और Android वर्जन प्राप्त किया जाता है, जो वर्जन-स्पेसिफिक फीचर्स इम्प्लीमेंट करने के लिए जरूरी है। चरण 1: प्रोजेक्ट बनाएं Android Studio में नया प्रोजेक्ट बनाएं। चरण 2: लेआउट में TextView res/l

  1. एंड्रॉइड पर ऑन-स्क्रीन वॉल्यूम कंट्रोल कैसे दिखाएं एंड्रॉइड पर ऑन-स्क्रीन वॉल्यूम कंट्रोल कैसे दिखाएं

    एंड्रॉइड फोन में डिवाइस की वॉल्यूम को कंट्रोल करने के लिए साइड में बटन होते हैं। आप गाने, पॉडकास्ट सुनते समय या वीडियो देखते समय इन बटनों का उपयोग करके आसानी से वॉल्यूम कंट्रोल कर सकते हैं। कभी-कभी, ये कुंजियां आपके फोन की वॉल्यूम को कंट्रोल करने का एकमात्र तरीका होती हैं। और अगर ये फिजिकल कीज़ टूट