android - ما الفرق بين "بس" و "ديب" و "دب" و "سب"؟


ما هو الفرق بين ما يلي؟

  • بكسل
  • غطس
  • موانئ دبي
  • س



Answers


من وثائق مطوري برامج أندرويد :

  1. بكسل
    بكسل - يتوافق مع وحدات البكسل الفعلية على الشاشة.

  2. في
    بوصة - على أساس الحجم المادي للشاشة.
    1 بوصة = 2.54 سنتيمتر

  3. مم
    مليمترات - استنادا إلى الحجم المادي للشاشة.

  4. حزب العمال
    نقاط - 1/72 من بوصة على أساس الحجم المادي للشاشة.

  5. دب أو تراجع
    بكسل مستقلة الكثافة - وحدة مجردة التي تقوم على الكثافة المادية للشاشة. هذه الوحدات هي نسبة إلى شاشة 160 نقطة في البوصة، لذلك واحد دب هو بكسل واحد على شاشة 160 نقطة في البوصة. وسوف تتغير نسبة دب-تو-بيكسيل مع كثافة الشاشة، ولكن ليس بالضرورة في نسبة مباشرة. ملاحظة: يقبل المترجم كلا من "ديب" و "دب"، على الرغم من أن "دب" أكثر اتساقا مع "سب".

  6. س
    بكسل مستقلة بكسل - وهذا هو مثل وحدة دب، ولكن يتم تحجيمها أيضا من قبل المستخدم حجم الخط تفضيل. من المستحسن استخدام هذه الوحدة عند تحديد أحجام الخطوط، لذلك سيتم تعديلها لكلا من كثافة الشاشة وتفضيل المستخدم.

من فهم الكثافة الاستقلال في الروبوت :

+----------------+----------------+---------------+-------------------------------+
| Density Bucket | Screen Density | Physical Size | Pixel Size                    | 
+----------------+----------------+---------------+-------------------------------+
| ldpi           | 120 dpi        | 0.5 x 0.5 in  | 0.5 in * 120 dpi = 60x60 px   | 
+----------------+----------------+---------------+-------------------------------+
| mdpi           | 160 dpi        | 0.5 x 0.5 in  | 0.5 in * 160 dpi = 80x80 px   | 
+----------------+----------------+---------------+-------------------------------+
| hdpi           | 240 dpi        | 0.5 x 0.5 in  | 0.5 in * 240 dpi = 120x120 px | 
+----------------+----------------+---------------+-------------------------------+
| xhdpi          | 320 dpi        | 0.5 x 0.5 in  | 0.5 in * 320 dpi = 160x160 px | 
+----------------+----------------+---------------+-------------------------------+
| xxhdpi         | 480 dpi        | 0.5 x 0.5 in  | 0.5 in * 480 dpi = 240x240 px | 
+----------------+----------------+---------------+-------------------------------+
| xxxhdpi        | 640 dpi        | 0.5 x 0.5 in  | 0.5 in * 640 dpi = 320x320 px | 
+----------------+----------------+---------------+-------------------------------+
+---------+-------------+---------------+-------------+--------------------+
| Unit    | Description | Units Per     | Density     | Same Physical Size | 
|         |             | Physical Inch | Independent | On Every Screen    | 
+---------+-------------+---------------+-------------+--------------------+
| px      | Pixels      | Varies        | No          | No                 | 
+---------+-------------+---------------+-------------+--------------------+
| in      | Inches      | 1             | Yes         | Yes                | 
+---------+-------------+---------------+-------------+--------------------+
| mm      | Millimeters | 25.4          | Yes         | Yes                | 
+---------+-------------+---------------+-------------+--------------------+
| pt      | Points      | 72            | Yes         | Yes                | 
+---------+-------------+---------------+-------------+--------------------+
| dp      | Density     | ~160          | Yes         | No                 | 
|         | Independent |               |             |                    | 
|         | Pixels      |               |             |                    | 
+---------+-------------+---------------+-------------+--------------------+
| sp      | Scale       | ~160          | Yes         | No                 | 
|         | Independent |               |             |                    | 
|         | Pixels      |               |             |                    | 
+---------+-------------+---------------+-------------+--------------------+

يمكن العثور على مزيد من المعلومات أيضا في وثائق تصميم غوغل .

لحساب الأبعاد على الجهاز الحقيقي هذا التطبيق يمكن استخدامها.




الكثير جدا كل شيء عن هذا وكيفية تحقيق أفضل دعم لشاشات متعددة مع أحجام وكثافة مختلفة هو موثقة بشكل جيد للغاية هنا:

حجم الشاشة
الحجم الفعلي الفعلي، ويقاس على الشاشة قطري. للبساطة، مجموعات الروبوت جميع أحجام الشاشة الفعلية إلى أربعة أحجام المعممة: الصغيرة، العادية، كبيرة، وخارجية كبيرة.

كثافة الشاشة
كمية البكسل داخل منطقة فعلية من الشاشة؛ وعادة ما يشار إليها باسم نقطة في البوصة (النقاط في بوصة). على سبيل المثال، تحتوي شاشة الكثافة "منخفضة" على عدد أقل من وحدات البكسل داخل منطقة فعلية معينة، مقارنة بشاشة كثافة "عادية" أو "عالية". للبساطة، مجموعات الروبوت جميع كثافة الشاشة الفعلية إلى ستة الكثافات المعممة: منخفضة ومتوسطة وعالية، عالية جدا، خارج اضافية عالية، وخارج اضافية خارج عالية.

اتجاه
اتجاه الشاشة من وجهة نظر المستخدم للعرض. هذا إما المناظر الطبيعية أو عمودي، وهذا يعني أن نسبة العرض إلى الشاشة إما واسعة أو طويل القامة، على التوالي. كن على علم بأن ليس فقط أجهزة مختلفة تعمل في اتجاهات مختلفة افتراضيا، ولكن التوجه يمكن أن تتغير في وقت التشغيل عندما يقوم المستخدم بتدوير الجهاز.

القرار
إجمالي عدد وحدات البكسل الفعلية على الشاشة. عند إضافة دعم لشاشات متعددة، والتطبيقات لا تعمل مباشرة مع القرار. ينبغي أن تكون التطبيقات المعنية فقط مع حجم الشاشة والكثافة، على النحو المحدد من قبل حجم وكثافة المجموعات المعممة.

كثافة بكسل مستقلة (دب)
وحدة بكسل الظاهرية التي يجب عليك استخدامها عند تحديد تخطيط واجهة المستخدم، للتعبير عن أبعاد تخطيط أو موقف بطريقة كثافة مستقلة. البكسل المستقل الكثافة يعادل بكسل فعلي واحد على شاشة 160 نقطة في البوصة، وهي كثافة خط الأساس التي يفترضها النظام لشاشة كثافة "متوسطة". وفي وقت التشغيل، يتعامل النظام بشفافية مع أي حجم للوحدات دب، عند الضرورة، استنادا إلى الكثافة الفعلية للشاشة المستخدمة. تحويل وحدات دب إلى بكسل الشاشة بسيط: px = dp * (dpi / 160) . على سبيل المثال، على شاشة 240 نقطة في البوصة، 1 دب يساوي 1.5 بكسل المادية. يجب عليك دائما استخدام وحدات دب عند تحديد واجهة مستخدم التطبيق، لضمان العرض السليم لواجهة المستخدم على الشاشات ذات الكثافات المختلفة.

إذا كنت أي جدية حول تطوير التطبيق الروبوت لأكثر من نوع واحد من الجهاز، يجب أن تقرأ الشاشات دعم وثيقة التنمية مرة واحدة على الأقل. بالإضافة إلى ذلك هو دائما شيء جيد لمعرفة العدد الفعلي للأجهزة النشطة التي لديها تكوين شاشة معينة.




سأقدم المزيد من التفاصيل حول كيفية تحويل دب إلى بس:

  • إذا كان يعمل على جهاز مدبي، فإن 150x150 بكسل صورة يستغرق 150 * 150 ديسيبل من مساحة الشاشة.
  • إذا كان يعمل على جهاز هدبي، فإن صورة 150x150 بكسل يستغرق 100 * 100 ديسيبل من مساحة الشاشة.
  • إذا كان يعمل على جهاز شدبي، فإن صورة 150x150 بكسل يستغرق 75 * 75 ديسيبل من مساحة الشاشة.

على العكس من ذلك: أقول، كنت ترغب في إضافة صورة إلى التطبيق الخاص بك وكنت في حاجة إليها لملء 100 * 100 دب السيطرة. ستحتاج إلى إنشاء صور بحجم مختلف لأحجام الشاشة المتوافقة:

  • 100 * 100 بكسل صورة ل مدبي
  • 150 * 150 بكسل صورة ل هدبي
  • 200 * 200 بكسل صورة ل شدبي



بكسل بكسل - نقطة لكل مقياس يتوافق مع بكسل الفعلية على الشاشة.

في بوصة - على أساس الحجم المادي للشاشة.

مم ملم - بناء على الحجم المادي للشاشة.

بت نقاط - 1/72 من بوصة على أساس الحجم المادي للشاشة.

دب الكثافة - بكسل مستقلة - وحدة مجردة التي تقوم على الكثافة المادية للشاشة. هذه الوحدات هي نسبة إلى شاشة 160 نقطة في البوصة، لذلك واحد dp هو بكسل واحد على شاشة 160 نقطة في البوصة. وسوف تتغير نسبة دب-تو-بيكسيل مع كثافة الشاشة، ولكن ليس بالضرورة في نسبة مباشرة. ملاحظة: مترجم يقبل كل من dip و dp ، على الرغم من dp هو أكثر اتساقا مع sp .

سب -Scale مستقلة بكسل - وهذا هو مثل وحدة dp ، ولكن يتم تحجيمها أيضا من قبل المستخدم حجم الخط تفضيل. فمن المستحسن استخدام هذه الوحدة عند تحديد أحجام الخط، لذلك سيتم تعديلها لكلا من كثافة الشاشة وتفضيل المستخدم.

نأخذ مثال لشاشتين بنفس الحجم ولكن واحد له كثافة شاشة 160 نقطة في البوصة (نقاط لكل بوصة، أي بكسل لكل بوصة) والآخر هو 240 نقطة في البوصة.

                          Lower resolution   screen          Higher resolution, same size
Physical Width                      1.5 inches                        1.5 inches
Dots Per Inch (“dpi”)               160                               240
Pixels (=width*dpi)                 240                               360
Density (factor of baseline 160)    1.0                               1.5

Density-independent Pixels          240                               240
(“dip or dp or dps”)

Scale-independent pixels 
 (“sip or sp”)                  Depends on user font size settings    same



وعلاوة على ذلك يجب أن يكون لديك فهم واضح حول المفاهيم التالية:

حجم الشاشة:

الحجم الفعلي الفعلي، ويقاس على الشاشة قطري. للبساطة، مجموعات الروبوت جميع الأحجام الشاشة الفعلية إلى أربعة أحجام المعمم: الصغيرة، العادية، كبيرة، وكبيرة جدا.

كثافة الشاشة:

كمية البكسل داخل منطقة فعلية من الشاشة؛ وعادة ما يشار إليها باسم نقطة في البوصة (النقاط في بوصة). على سبيل المثال، تحتوي شاشة الكثافة "منخفضة" على عدد أقل من وحدات البكسل داخل منطقة فعلية معينة، مقارنة بشاشة كثافة "عادية" أو "عالية". من أجل البساطة، مجموعات الروبوت جميع كثافة الشاشة الفعلية إلى أربعة الكثافات المعممة: منخفضة ومتوسطة وعالية، وعالية جدا.

اتجاه:

اتجاه الشاشة من وجهة نظر المستخدم للعرض. هذا إما المناظر الطبيعية أو عمودي، وهذا يعني أن نسبة العرض إلى الشاشة إما واسعة أو طويل القامة، على التوالي. كن على علم بأن ليس فقط أجهزة مختلفة تعمل في اتجاهات مختلفة افتراضيا، ولكن التوجه يمكن أن تتغير في وقت التشغيل عندما يقوم المستخدم بتدوير الجهاز.

القرار:

إجمالي عدد وحدات البكسل الفعلية على الشاشة. عند إضافة دعم لشاشات متعددة، والتطبيقات لا تعمل مباشرة مع القرار. ينبغي أن تكون التطبيقات المعنية فقط مع حجم الشاشة والكثافة، على النحو المحدد من قبل حجم وكثافة المجموعات المعممة.

كثافة بكسل مستقلة (دب):

وحدة بكسل الظاهرية التي يجب عليك استخدامها عند تحديد تخطيط واجهة المستخدم، للتعبير عن أبعاد تخطيط أو موقف بطريقة كثافة مستقلة. البكسل المستقل الكثافة يعادل بكسل فعلي واحد على شاشة 160 نقطة في البوصة، وهي كثافة خط الأساس التي يفترضها النظام لشاشة كثافة "متوسطة". وفي وقت التشغيل، يتعامل النظام بشفافية مع أي حجم للوحدات دب، عند الضرورة، استنادا إلى الكثافة الفعلية للشاشة المستخدمة. تحويل وحدات دب إلى بكسل الشاشة بسيط: بس = دب * (نقطة في البوصة / 160). على سبيل المثال، على شاشة 240 نقطة في البوصة، 1 دب يساوي 1.5 بكسل المادية. يجب عليك دائما استخدام وحدات دب عند تحديد واجهة مستخدم التطبيق، لضمان العرض السليم لواجهة المستخدم على الشاشات ذات الكثافات المختلفة.

المرجع: موقع مطوري برامج أندرويد




dp هو dip . استخدامه لكل شيء (الهامش، الحشو، الخ).

استخدم sp ل {تكست-سيز} فقط.

للحصول على نفس الحجم على كثافة الشاشة المختلفة، الروبوت يترجم هذه الوحدات إلى بكسل في وقت التشغيل، لذلك ليس هناك الرياضيات صعبة بالنسبة لك القيام به.

انظر الفرق بين px ، dp و sp على أحجام الشاشة المختلفة.

المصدر: الروبوت البرمجة: دليل كبير الطالب الذي يذاكر كثيرا مزرعة




لقد حسبت الصيغة أدناه لجعل التحويلات dpi في dpi إلى dp و sp




المصدر 1

المصدر 2

المصدر 3 : (ترد البيانات من المصدر 3 أدناه)

هذه هي قيم الأبعاد المعرفة في شمل. يتم تحديد البعد برقم متبوعا بوحدة قياس. على سبيل المثال: 10px، 2in، 5sp. ويدعم وحدات القياس التالية من قبل الروبوت:

موانئ دبي

الكثافة المستقلة بكسل - وحدة مجردة التي تقوم على الكثافة المادية للشاشة. هذه الوحدات هي نسبة إلى 160 نقطة في البوصة (النقاط لكل بوصة) الشاشة، التي 1dp يساوي تقريبا 1px. عند التشغيل على شاشة ذات كثافة أعلى، يتم زيادة عدد وحدات البكسل المستخدمة لرسم 1dp من خلال عامل مناسب لشاشة نقطة في البوصة للشاشة. وبالمثل، عندما تكون على شاشة أقل كثافة، يتم تقليل حجم وحدات البكسل المستخدمة في 1dp. وسوف تتغير نسبة دب-تو-بيكسيل مع كثافة الشاشة، ولكن ليس بالضرورة في نسبة مباشرة. استخدام وحدات دب (بدلا من وحدات بكسل) هو الحل البسيط لجعل أبعاد العرض في التخطيط الخاص بك تغيير الحجم بشكل صحيح لكثافة الشاشة المختلفة. وبعبارة أخرى، فإنه يوفر الاتساق للأحجام في العالم الحقيقي من عناصر واجهة المستخدم الخاصة بك عبر الأجهزة المختلفة.

س

بكسل مستقلة بكسل - وهذا هو مثل وحدة دب، ولكن يتم تحجيمها أيضا من قبل المستخدم حجم الخط تفضيل. فمن المستحسن استخدام هذه الوحدة عند تحديد أحجام الخط، لذلك سيتم تعديلها لكلا من كثافة الشاشة وتفضيل المستخدم.

حزب العمال

نقاط - 1/72 من بوصة على أساس الحجم المادي للشاشة.

بكسل

بكسل - يتوافق مع بكسل الفعلية على الشاشة. ولا يوصى باستخدام وحدة القياس هذه لأن التمثيل الفعلي يمكن أن يتفاوت عبر الأجهزة؛ قد يكون لكل جهاز عدد مختلف من وحدات البكسل لكل بوصة، وقد يكون عدد وحدات البكسل المتاحة على الشاشة أكثر أو أقل.

مم

مليمتر - بناء على الحجم المادي للشاشة.

في

بوصة - بناء على الحجم المادي للشاشة.

ملاحظة: البعد هو مورد بسيط يتم الرجوع إليه باستخدام القيمة المقدمة في السمة نيم (وليس اسم ملف شمل). وعلى هذا النحو، يمكنك دمج موارد الأبعاد مع موارد بسيطة أخرى في ملف شمل واحد، ضمن عنصر واحد.




تعريفات

بكسل أو نقطة بكسل على الشاشة الفعلية.

نقطة في البوصة هي بكسل لكل بوصة على الشاشة المادية وتمثل كثافة العرض.

الروبوت يعطي أسماء الاسم المستعار لعدة كثافات

  • لدبي (منخفض) ~ 120dpi
  • مدبي (متوسطة) ~ 160dpi
  • هدبي (عالية) ~ 240dpi
    • معظم الأجهزة في عام 2015 هنا
  • شدبي (عالية جدا) ~ 320dpi
    • ابل اي فون 4/5/6، نيكسوس 4
  • زكسدبي (خارج اضافية عالية) ~ 480dpi
    • نيكسوس 5
  • زكسدبي (اضافية خارج اضافية عالية) ~ 640dpi

انحدار أو دب هي كثافة بيكسل إنديبندانت ، أي أنها تتوافق مع أكثر أو أقل بكسل اعتمادا على الكثافة المادية.

  • 1dp = 1px على مدبي

سب أو رشفة بكسل بكسل مستقل . يتم تحجيمها عند تشغيل الخيار نص كبير في إعدادات > إمكانية الوصول

  • 1sp = 1dp
  • 1sp = 1.2dp مع إمكانية الوصول نص كبير

ما لاستخدام؟

استخدام سب لحجم النص.

استخدام دب لكل شيء آخر.




في الأساس الوقت الوحيد الذي ينطبق بس هو واحد بكسل، وهذا إذا كنت تريد بكسل واحد بالضبط على الشاشة كما هو الحال في حالة المفرق. في> 160، قد تحصل على 2-3 بكسل، وعلى 120 نقطة في البوصة، فإنه يتجول إلى 0.




بكسل

بكسل - يتوافق مع وحدات البكسل الفعلية على الشاشة.

دب أو تراجع

بكسل مستقلة الكثافة - وحدة مجردة التي تقوم على الكثافة المادية للشاشة. هذه الوحدات هي نسبة إلى شاشة 160 نقطة في البوصة، لذلك واحد دب هو بكسل واحد على شاشة 160 نقطة في البوصة.

استخدام دب:

استقلالية الكثافة - يحقق تطبيقك "استقلالية الكثافة" عندما يحافظ على الحجم المادي (من وجهة نظر المستخدم) لعناصر واجهة المستخدم عند عرضها على الشاشات ذات الكثافات المختلفة. (أي) يجب أن تبدو الصورة بنفس الحجم (لا تضخم أو تقلص) في أنواع مختلفة من الشاشات.

س

بكسل مستقلة بكسل - وهذا هو مثل وحدة دب، ولكن يتم تحجيمها أيضا من قبل المستخدم حجم الخط تفضيل.

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension




أين تستخدم ما والعلاقة بين بس & دب؟

كثافة بكسل مستقلة (دب)

وحدة بكسل الظاهرية التي يجب عليك استخدامها عند تحديد تخطيط واجهة المستخدم، للتعبير عن أبعاد تخطيط أو موقف بطريقة كثافة مستقلة. وكما هو موضح أعلاه، فإن البكسل المستقل للكثافة يساوي بكسل فعلي واحد على شاشة 160 نقطة في البوصة، وهي كثافة خط الأساس التي يفترضها النظام لشاشة كثافة "متوسطة". وفي وقت التشغيل، يتعامل النظام بشفافية مع أي حجم للوحدات دب، عند الضرورة، استنادا إلى الكثافة الفعلية للشاشة المستخدمة. تحويل وحدات دب إلى بكسل بكسل بسيطة:

بس = دب * (نقطة في البوصة / 160).

على سبيل المثال، على شاشة 240 نقطة في البوصة، 1 دب يساوي 1.5 بكسل المادية. يجب عليك دائما استخدام وحدات دب عند تحديد واجهة مستخدم التطبيق، لضمان العرض السليم لواجهة المستخدم على الشاشات ذات الكثافات المختلفة.

فهم بكسل إلى دب والعكس بالعكس ضروري جدا (وخاصة لإعطاء القيم دب بالضبط للفريق الإبداعي)

dp = px * 160 / dpi

MDPI = 160 dpi || Therefore, on MDPI 1 px = 1 dp
For example, if you want to convert 20 pixel to dp, use the above formula,
dp = 20 * 160 / 160 = 20.
So, 20 pixel = 20 dp.

HDPI = 240 dpi - So, on HDPI 1.5 px = 1 dp
XHDPI = 320 dpi - So, on XHDPI 2 px = 1 dp
XXHDPI = 480 dpi - So, on XXHDPI 3 px = 1 dp

For example, let us consider Nexus 4.
If 24 pixels to be converted to dp and if it is a Nexus 4 screen, developers can
convert it to dp easily by the following calculation :
dp = 24 * 160 / 320 = 12 dp
Screen dimension:
768 x 1280 pixel resolution (320 ppi or 320dpi)
Optional (screen size):
 4.7" diagonal
  • حاول الحصول على جميع قيم البكسل في أرقام حتى من فريق التصميم. وإلا فإن الدقة تفقد يحدث في حين ضرب مع 0.5.

بكسل

هو موضح أعلاه. في محاولة لتجنب في تخطيط الملفات. ولكن هناك بعض الحالات، حيث مطلوب بكسل. على سبيل المثال، خط مقسم ليستفيو. بس هو أفضل هنا لإعطاء خط واحد بكسل كمقسم لجميع عبر دقة الشاشة.

س

استخدام سب لأحجام الخطوط. ثم فقط الخط داخل التطبيق سوف تتغير بينما يتغير حجم الخطوط الجهاز (وهذا هو، عرض -> الخطوط على الجهاز). إذا كنت ترغب في الاحتفاظ بخط ثابت الحجم داخل التطبيق، يمكنك إعطاء البعد الخط في دب. وفي مثل هذه الحالة، لن يتغير أبدا. يمكن للمطورين الحصول على مثل هذا الشرط لبعض شاشات محددة، لذلك، يمكن للمطورين استخدام دب بدلا من سب. في جميع الحالات الأخرى، ينصح سب.




يمكنك أن ترى الفرق بين px و dp من الصورة أدناه، ويمكنك أيضا أن تجد أن px و dp لا يمكن أن تضمن نفس الأحجام المادية على شاشات مختلفة.




أي شيء ذي صلة بحجم النص والمظهر يجب أن يستخدم sp أو pt . في حين، أي شيء يتعلق بحجم الضوابط، وتخطيطات، وما إلى ذلك يجب أن تستخدم مع dp .

يمكنك استخدام كل من dp dip في أماكنها.




أود فقط استخدام دب.

هناك الكثير من الحديث عن استخدام "سب" لأحجام الخطوط، وبينما أقدر النقطة، لا أعتقد أن هذا هو الشيء الصحيح الذي يجب القيام به من وجهة نظر التصميم. يمكنك في نهاية المطاف كسر التصميم الخاص بك إذا كان المستخدم لديه بعض ونكي اختيار حجم الخط، وسوف ينتهي المستخدم إلقاء اللوم على التطبيق ، وليس خيارات حياتهم الخاصة.

أيضا، إذا كنت تأخذ التطبيق الخط سب على قرص 160 نقطة في البوصة، وسوف تجد أن كل شيء موازين ... ولكن الخط الخاص بك، والتي سوف تبدو صغيرة في المقارنة. انها ليست نظرة جيدة.

في حين أن فكرة الخطوط "سب" لها قلب طيب، إلا أنها فكرة سيئة. عصا مع دب لكل شيء.




الفرق بين وحدات dp و sp المذكورة باسم " تفضيل المستخدم حجم الخط " من الإجابات المنسوخة من الوثائق الرسمية يمكن أن ينظر إليه في وقت التشغيل عن طريق تغيير Settings->Accessibility->Large Text خيار Settings->Accessibility->Large Text .

Large Text يجبر النص لتصبح 1.3 مرة أكبر.

private static final float LARGE_FONT_SCALE = 1.3f;

هذا قد يكون جيدا بالطبع بائعا تعتمد لأنها تكمن في حزم / تطبيقات / إعدادات .




سب = مقياس بكسل مستقل

دب = ديب = كثافة بكسل مستقلة

نقطة لكل بوصة = نقاط لكل بوصة

يجب علينا تجنب استخدام سب .

يجب أن نستخدم دب لدعم شاشات متعددة.

الروبوت يدعم قرارات الشاشة المختلفة

  • لدبي (منخفض) ~ 120 نقطة في البوصة مدبي (متوسطة) ~ 160 نقطة في البوصة هدبي (عالية) ~ 240 نقطة في البوصة شدبي
  • (خارج عالية) ~ 320 نقطة في البوصة زكسدبي (اضافية خارج عالية) ~ 480 نقطة في البوصة زكسدبي
  • (خارج خارج اضافية عالية) ~ 640 نقطة في البوصة

جهاز 120 ديسيبل لدبي لديه 120 بكسل في حجم 1 بوصة.

الشيء نفسه بالنسبة للكثافات الأخرى ...

نحن كمهندسين برمجيات يجب أن تستخدم صيغ التحويل هذه:

بيكسيل = دب * (الكثافة / 160)

لذا فإن جهاز دبي دبي البالغ 1 نقطة في البوصة 1 = 1 * (240/160) = 3/2 = 1.5 بكسل.

و 480 نقطة في البوصة جهاز 1 دب سوف يكون = 1 * (480/160) = 3 بكسل.

باستخدام هذه المعرفة 1.5 و 3 بكسل، يمكن لمهندس البرمجيات تصميم تخطيطات لكثافات مختلفة.

للتحقق من المعلمات الشاشة من أي جهاز:

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);

Toast.makeText(
    this,
    "4:" + metrics.heightPixels + "," + metrics.density + ","
    + metrics.densityDpi, Toast.LENGTH_LONG).show();



دبي -

  • النقاط لكل بوصة
  • قياس كثافة بكسل الشاشة.

بكسل - بكسل

  • لرسم الخرائط بكسل الشاشة

بت - نقاط

  • حوالي 1/72 من بوصة، فيما يتعلق حجم الشاشة المادية.

في - بوصة - فيما يتعلق حجم الشاشة المادية (1 بوصة = 2.54 سم).

مم - مليمتر - فيما يتعلق حجم الشاشة المادية.

سب - مقياس مستقل بكسل.

  • استنادا إلى تفضيل المستخدم حجم الخط.
  • يجب أن يكون الخط في 'سب'.

تراجع -

  • ديب == دب
  • كثافة بكسل مستقلة.
  • وهو يختلف على أساس كثافة الشاشة.
  • في شاشة 160 نقطة في البوصة، 1 دب = 1 بكسل.
  • استخدم دب باستثناء حجم خط النص.

في المعيار، وتستخدم دب و سب. سب لحجم الخط و دب لكل شيء آخر.

صيغة لتحويل الوحدات:

بس = دب * (دبي / 160)؛

Density Bucket -> Screen Display => Physical Size        => Pixel Size                   

ldpi         -> 120 dpi          => 0.5 x 0.5 in         => 0.5 in * 120 dpi = 60x60 px   

mdpi         -> 160 dpi          => 0.5 x 0.5 in         => 0.5 in * 160 dpi = 80x80 px   

hdpi         -> 240 dpi          => 0.5 x 0.5 in         => 0.5 in * 240 dpi = 120x120 px  

xhdpi        -> 320 dpi          => 0.5 x 0.5 in         => 0.5 in * 320 dpi = 160x160 px  

xxhdpi       -> 480 dpi          => 0.5 x 0.5 in         => 0.5 in * 480 dpi = 240x240 px 

xxxhdpi      -> 640 dpi          => 0.5 x 0.5 in         => 0.5 in * 640 dpi = 320x320 px  



  • بكسل - بكسل واحد، وهو نفس ما يتم استخدامه في كس وجافا سكريبت وما إلى ذلك.
  • سب - مقياس بكسل مستقلة
  • تراجع - كثافة بكسل مستقلة

عادة يتم استخدام سب لأحجام الخط، في حين يتم استخدام تراجع (وتسمى أيضا دب) للآخرين.




إليك الصيغة التي يستخدمها أندرويد:

بس = دب * (نقطة في البوصة / 160)

حيث نقطة في البوصة هي واحدة من كثافة الشاشة التالية. للحصول على قائمة بجميع الكثافات الممكنة انتقل إلى http://developer.android.com/reference/android/util/DisplayMetrics.html . وهو يحدد الثوابت "DENSITY_ *".

لدبي (منخفض) ~ 120dpi مدبي (متوسطة) ~ 160dpi هدبي (عالية) ~ 240dpi شدبي (خارج عالية) ~ 320dpi زسدبي (خارج اضافية عالية) ~ 480dpi زكسدبي (اضافية خارج اضافية عالية) ~ 640dpi

مأخوذة من http://developer.android.com/guide/practices/screens_support.html .

وهذا سوف يفرز الكثير من الارتباك عند الترجمة بين بس و دب إذا كنت تعرف الشاشة دبي.

لذلك، لنفترض أنك تريد صورة 60 ديسيبل لشاشة هدبي ثم حجم بكسل الفعلي من 60 ديسيبل هو:

بس = 60 * (240/160)




يتم تجميع حجم الشاشة في Android في فئات small medium large ، extra large ، double-extra triple-extra . كثافة الشاشة هي مقدار بكسل داخل منطقة (مثل بوصة) من الشاشة. عموما يتم قياسها في نقاط لكل بوصة (نقطة في البوصة). يتم تجميع كثافة الشاشة منخفضة، متوسطة، عالية وعالية إضافية. الحل هو العدد الإجمالي للبكسل في الشاشة.

  • دب: الكثافة بكسل المستقلة، فإنه يختلف على أساس كثافة الشاشة. في شاشة 160 نقطة في البوصة، 1 دب = 1 بكسل. باستثناء حجم الخط، استخدم دب دائما.
  • ديب: ديب == دب. في الإصدارات السابقة الروبوت تم استخدام تراجع وتغييرها لاحقا إلى دب.
  • سب: مقياس بكسل مستقل، تحجيمها على أساس تفضيل حجم الخط المستخدم. يجب أن تستخدم الخطوط سب.
  • بكسل: بكسل القياسية المعتادة التي خرائط إلى بكسل الشاشة.
  • في: بوصة، فيما يتعلق حجم الشاشة المادية.
  • مم: ملليمتر، فيما يتعلق حجم الشاشة المادية.
  • بت: 1/72 من بوصة، فيما يتعلق بحجم الشاشة الفعلية.

صيغة للتحويل بين الوحدات

 px = dp * (dpi / 160)

دب إلى بس في الجهاز

المثال التالي قد يساعد على فهم أفضل. يحدث التحجيم على أساس حجم دلو من 120 (لدبي)، 160 (مدبي)، 240 (هدبي)، 320 (شدبي)، 480 (زسدبي) و 640 (زسدبي). نسبة جوجل المقترحة للتصميم هو 3: 4: 6: 8: 12 ل لدبي: مدبي: هدبي: شدبي: زسدبي

صورة 150 بكسل x 150 بكسل ستشغل،

  • 150 دب X 150 دب مساحة الشاشة في مدبي
  • 100 دب X 100 دب مساحة الشاشة في هدبي
  • 75 دب X 75 دب مساحة الشاشة في شدبي

يمكنك استخدام آلة حاسبة دبي التالية لإصلاح أحجام الصور الخاصة بك وأبعاد أخرى عندما كنت ترغب في أن يكون تصميم واجهة المستخدم موحدة في جميع أجهزة الروبوت.

حاسبة دبي في جافا

/*
Program output
LDPI: 165.0 X 60.0
MDPI: 220.0 X 80.0
HDPI: 330.0 X 120.0
XHDPI: 440.0 X 160.0
XXHDPI: 660.0 X 240.0
XXXHDPI: 880.0 X 320.0
*/
public class DPICalculator {

private final float LDPI = 120;
private final float MDPI = 160;
private final float HDPI = 240;
private final float XHDPI = 320;
private final float XXHDPI = 480;
private final float XXXHDPI = 640;    

private float forDeviceDensity;
private float width;
private float height;

public DPICalculator(){  }

public DPICalculator(float forDeviceDensity, float width, float height){
    this.forDeviceDensity = forDeviceDensity;
    this.width = width;
    this.height = height;
}

public static void main(String... args) {
    DPICalculator dpiCalculator = new DPICalculator(240,330,120);
    dpiCalculator.calculateDPI();
}


private float getPx(float dp, float value) {
    float px = dp * (value / forDeviceDensity );        
    return px;
}

private void calculateDPI() {

    float ldpiW = getPx(LDPI,width);        
    float ldpiH =  getPx(LDPI,height);
    float mdpiW = getPx(MDPI,width);        
    float mdpiH =  getPx(MDPI,height);        
    float hdpiW = getPx(HDPI,width);        
    float hdpiH =  getPx(HDPI,height);       
    float xdpiW = getPx(XHDPI,width);        
    float xdpiH =  getPx(XHDPI,height);
    float xxdpiW = getPx(XXHDPI,width);        
    float xxdpiH =  getPx(XXHDPI,height);
    float xxxdpiW = getPx(XXXHDPI,width);        
    float xxxdpiH =  getPx(XXXHDPI,height);

    System.out.println("LDPI: " + ldpiW + " X " + ldpiH);
    System.out.println("MDPI: " + mdpiW + " X " + mdpiH);
    System.out.println("HDPI: " + hdpiW + " X " + hdpiH);
    System.out.println("XHDPI: " + xdpiW + " X " + xdpiH);
    System.out.println("XXHDPI: " + xxdpiW + " X " + xxdpiH);
    System.out.println("XXXHDPI: " + xxxdpiW + " X " + xxxdpiH);        
}
}

مزيد من المعلومات الرجوع الرابط التالي.

http://javapapers.com/android/difference-between-dp-dip-sp-px-in-mm-pt-in-android/




سب = مقياس بكسل مستقل

دب = كثافة بكسل مستقلة

نقطة في البوصة = كثافة بكسل

لقد ذهبت من خلال الإجابات المذكورة أعلاه ... لا تجد لهم بالضبط الصحيح. سب لحجم النص، دب لتخطيط الحدود - القياسية. ولكن سب لحجم النص سوف كسر تخطيط إذا ما استخدمت بلا مبالاة في معظم الأجهزة.

سب تأخذ تكستسيز من الجهاز، في حين أن دب تأخذ ذلك من معيار كثافة الجهاز (أبدا تغيير في جهاز) يقول نص 100sp يمكن أن تحتل 80٪ من الشاشة أو 100٪ من الشاشة اعتمادا على حجم الخط المنصوص عليها في الجهاز

يمكنك استخدام سب لتخطيط الحدود أيضا، وسوف تعمل :) لا القياسية استخدام التطبيق سب للنص الكامل

استخدام سب و دب لحجم النص النظر أوكس.

  • لا تستخدم سب للنص في شريط الأدوات (يمكن استخدام الروبوت الأبعاد المتاحة أو دب)
  • لا تستخدم سب للنص في أزرار صغيرة محدودة، نص أصغر جدا، الخ

بعض الناس استخدام فونت ضخمة في هواتفهم لمزيد من القراءة، مما يتيح لهم نص هاردكوديد صغير الحجم سيكون قضية أوكس. وضع سب للنص عند الضرورة، ولكن تأكد من أنه لن كسر تخطيط.




لقد جئت عبر مقال جيد حول تصميم واجهة المستخدم تطبيقات الروبوت لدقة الشاشة المختلفة، وأود أن ترك الأمر هنا فقط لشخص ما يبحث في هذا المجال. نعم، وأنا أعلم أنه وصف بطريقة أو بأخرى في مستندات غوغل (والمذكورة في المشاركات أعلاه)، قرأت ذلك ولكن لم يكن جيدا بالنسبة لي (نعم، قد أكون غبي جدا)). وظل من غير الواضح بالنسبة لي كيفية تصميم تخطيطات قادرة على التعامل مع حجم الشاشة المختلفة. أكره مفهوم دب وهلم جرا، عندما أحتاج إلى تنفيذ "مرنة" تخطيط واجهة المستخدم لشاشات مختلفة. (يا المطورين يوس - نعم، كنت على حق انها مفهوم القصة المصورة).

الروبوت ليس سيئة مفهوم واجهة المستخدم، ولكن يفتقر إلى دائرة الرقابة الداخلية ميزات القصة المصورة، للأسف. تصميم واجهة المستخدم مرونة في الروبوت ليس من السهل شيء (في أحسن الأحوال).

هنا يذهب المادة التي ساعدتني على فهم ما يجب القيام به في الروبوت لجعل تخطيطات لأحجام مختلفة للشاشة:

http://jmsliu.com/1718/decide-android-app-screen-size.html

كيفية تصميم واجهة المستخدم للتطبيقات أندرويد لاختلاف حجم الشاشة

لتصميم واجهة مستخدم التطبيق لأحجام مختلفة للشاشة، التصميم الأولي لديه لتلبية الحد الأدنى من المساحة المطلوبة لكل حجم الشاشة. الروبوت يحدد الحد الأدنى للحجم (في موانئ دبي) لكل نوع الشاشة المعمم. هنا هو الروبوت حجم الشاشة التوجيهي. عندما نحصل على حجم الشاشة في موانئ دبي، فإنه ليس كافيا بالنسبة لنا لتصميم واجهة المستخدم التطبيق الروبوت. لكل حجم الشاشة، ونحن بحاجة إلى إعداد الرسومات والصور النقطية لكل الكثافة. هنا هو الروبوت كثافة الشاشة التوجيهي.

لسهولة الحساب، ويمكننا تتبع 3: نسبة التحجيم 8 بين الكثافات معممة أربعة: 4: 6. إذا كنا خلق صورة 36 ​​× 36 بيكسل للجهاز ldpi، والباقي كثافة وحجم الصور يكون 48 × 48 لmdpi، 72 × 72 لhdpi، و 96 × 96 لxhdpi.

كيفية تصميم تطبيقات الروبوت UI في فوتوشوب

العديد من المصممين لديهم مشاكل لتصميم واجهة المستخدم التطبيق الروبوت في الفوتوشوب أو غيره من بكسل مقرها أدوات التصميم الجرافيكي بسبب حدة مستقلة ذات الكثافة السكانية، موانئ دبي. المصممين لا يعرفون كيفية تعيين موانئ دبي إلى بكسل. جوجل أيضا لا يعطي واضح دليل تصميم الروبوت UI بالنسبة لهم، على الرغم من أنها تعطي الصيغة الأساسية للموانئ دبي وبكسل الترجمة.

كما تعريف الروبوت، 1PD يساوي 1PX تحت 160 جهاز نقطة لكل بوصة (mdpi). لذلك نحن نريد لتصميم تطبيق Android كسلارغي جهاز الروبوت مع كثافة mdpi، يمكننا تحديد حجم UI لدينا في بكسل كما 960 بكسل في العرض و720px في الارتفاع. اتبع نفس القاعدة رسم الخرائط، ونحن يمكن أن تحصل على ما يلي الروبوت التطبيق حجم الشاشة تصميم واجهة المستخدم التوجيهي:

الاضافى : إذا كنت مهتما في واجهة المستخدم "مرنة" للغاية، إلقاء نظرة على هذه المكتبة: إن SDK الروبوت الذي يوفر حجم وحدة جديدة - SDP (موانئ دبي تحجيم). موازين هذه الوحدة الحجم مع حجم الشاشة (وهذا مذكور أيضا في الإجابة هنا، حول SDPالمكتبة)

ADDED2 غوغل قد أدركوا أخيرا فائدة مفهوم دائرة الرقابة الداخلية Storeboard UI، وهنا يذهب ConstraintLayoutلعالم الروبوت: بناء UI الاستجابة مع ConstraintLayout (IMHO و يجب أن يقرأ لكل ديف الروبوت).




حجم الشاشة يتم تجميع في الروبوت إلى فئات ldpi، mdpi، hdpi، xhdpi، xxhdpiو xxxhdpi. كثافة الشاشة هو مقدار بكسل داخل المنطقة (مثل بوصة) من الشاشة. عموما يقاس عليه في نقطة لكل بوصة ( dpi).

PX(Pixels):

  • لدينا بكسل القياسية المعتادة التي تقوم بتعيين لبكسل الشاشة. pxهو المقصود لبكسل المطلقة. ويستخدم هذا إذا كنت تريد أن تعطي من حيث بكسل المطلقة للعرض أو ارتفاع. لا ينصح.

DP/DIP(Density pixels / Density independent pixels):

  • dip == dp. في وقت سابق من إصدارات أندرويد تراجع استخدمت وغيرت في وقت لاحق dp. هذا هو بديل px.

  • عموما نحن أبدا استخدام pxلأنه القيمة المطلقة. إذا كنت تستخدم pxلتحديد العرض أو الارتفاع، وإذا كان يتم تحميل هذا التطبيق إلى أجهزة الشاشات بأحجام مختلفة، ثم هذا الرأي لن تمتد حسب الحجم الأصلي الشاشة.

  • dpينصح بشدة لاستخدامها في مكان px. استخدام dpإذا كنت أريد أن أذكر العرض والارتفاع في النمو وتقليص حيوي استنادا إلى أحجام الشاشة.

  • اذا استسلمنا dp/dip، والروبوت تلقائيا بحساب حجم بكسل على أساس 160 بكسل شاشة الحجم.

SP(Scale independent pixels):

  • تحجيم على أساس تفضيل حجم الخط المستخدم. يجب أن تستخدم الخطوط sp.

  • عندما ذكر أحجام الخطوط لتتناسب مع لأحجام الشاشة المختلفة، واستخدام sp. هذا هو مماثل ل dp. استخدم spخاصة بالنسبة للأحجام الخط لتنمو وتتقلص بشكل حيوي استنادا أحجام الشاشة

وتقول الوثائق الروبوت:

عند تحديد أبعاد، استخدم دائما إما dpأو spالوحدات. A dpهو بكسل مستقلة ذات الكثافة الذي يتوافق مع الحجم الفعلي بكسل في 160 dpi. و spهو الوحدة الأساسية نفسها، ولكن يتم تحجيم حسب حجم النص المفضل للمستخدم (انها بكسل على نطاق مستقل)، لذلك يجب عليك استخدام هذه الوحدة القياس عند تحديد حجم النص




dp: (density independent pixels)فإن عدد بكسل ممثلة في وحدة واحدة من موانئ دبي تزيد مع زيادة دقة الشاشة (عندما يكون لديك المزيد من نقطة / بكسل في البوصة). على العكس من الأجهزة مع دقة أقل، وعدد من بكسل ممثلة في على وحدة من موانئ دبي نقصان. لأن هذا هو وحدة نسبية، فإنه يحتاج إلى أن يكون خط الأساس يمكن مقارنتها مع. هذا الأساس هو 160 نقطة في البوصة الشاشة. هذه هي المعادلة:px = dp * (dpi / 160).

sp: (scale independent pixels) هذه الوحدة موازين وفقا للنقطة في البوصة الشاشة (على غرار موانئ دبي)، وكذلك تفضيل حجم الخط المستخدم.

px (Pixels) - بكسل الفعلية أو النقاط التي تظهر على الشاشة.

لمزيد من التفاصيل يمكنك زيارة

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension و http://developer.android.com/about/dashboards/index.html#Screens




ويتكون شاشة الهاتف المحمول يصل الآلاف من النقاط الدقيقة المعروفة باسم بكسل (بكسل) . بكسل هو أصغر عنصر الذي يذهب إلى جعل الصورة. وكلما زاد عدد وحدات البكسل لجعل صورة أو الصياغة، وأكثر وضوحا يصبح ويجعل شاشة الهاتف الذكي أكثر قابلية للقراءة بسهولة.

يتم قياس دقة الشاشة من حيث عدد البكسل على الشاشة. دقة الشاشة هي مواصفات شائعة الاستخدام عند شراء الجهاز، ولكنها في الواقع ليس هذا مفيد عند تصميم للروبوت لأن التفكير من الشاشات من حيث بكسل يتجاهل مفهوم الحجم المادي، والتي لجهاز اللمس هو حقا مهم حقا.

كثافة بكسل المستقلة (موانئ دبي أو تراجع) تسمح للمصمم لخلق الأصول التي تظهر في وسيلة المتوقعة، بغض النظر عن قرار أو كثافة الجهاز الهدف.

بكسل مستقلة الكثافة (موانئ دبي أو تراجع) يساوي بكسل واحد في كثافة خط الأساس أو 160 نقطة في البوصة (نقطة في البوصة).

1 بكسل / 1DP = 160 نقطة في البوصة / 160 نقطة في البوصة

2 بكسل / 1DP = 320 نقطة في البوصة (2X) / 160 نقطة في البوصة

أين،

نقطة في البوصة هو نقطة في البوصة

وهكذا، في 320 نقطة في البوصة، 1 موانئ دبي يساوي 2 بكسل.

معادلة

بكسل / موانئ دبي = نقطة في البوصة / 160dpi

النقاط في البوصة (dpi) هي مقياس لمدى الحدة (أي، كثافة نقاط مضيئة) على شاشة العرض. فإن نقطة في البوصة للقرار الصورة المقدمة تختلف بناء على حجم الشاشة الإجمالي منذ يتم نشر نفس العدد من بكسل على مدى مساحة مختلفة.

العمل مع كثافة بكسل مستقلة تساعدنا على التعامل مع حالة مثل التي لديك جهازين مع بكسل القرار نفسه، ولكن مقدار المساحة المختلفة. لنفترض في هذه الحالة، قرص والهاتف لديه نفس بكسل القرار 1280 800 بكسل (160 نقطة في البوصة) و 800 من 1280 بكسل (320 نقطة في البوصة) على التوالي.

الآن لأن اللوحة هي في كثافة خط الأساس (160 نقطة في البوصة) الأحجام بكسل المادية وكثافة مستقلة لها هي نفسها، 1280 800. الهاتف من جهة أخرى لديها كثافة بكسل أعلى، وهكذا كان نصف عدد كثافة بكسل مستقلة البدنية بكسل. لذلك الهاتف لديه 400 من 640 كثافة بكسل مستقلة. وذلك باستخدام بكسل مستقلة ذات الكثافة السكانية يجعل من السهل تصور عقليا أن قرص يحتوي مساحة أكبر بكثير من الهاتف.

وبالمثل، إذا كان لديك جهازين مع حجم الشاشة مماثلة، ولكن كثافة بكسل مختلفة، ويقول واحد هو 800 1280 بكسل (320 نقطة في البوصة)، والآخر هو 400 من 640 بكسل (160 نقطة في البوصة)، ونحن لسنا في حاجة لتحديد تماما تصاميم مختلفة لهذه الأجهزة اثنين كما يمكننا قياس الأصول من حيث كثافة بكسل المستقل الذي هو نفسه لكلا الجهازين.

800 1280 بكسل (320dpi) = 400 من 640 كثافة بكسل المستقلة (موانئ دبي)

400 من قبل 640 بكسل (160 نقطة في البوصة) = 400 من 640 كثافة بكسل المستقلة (موانئ دبي)

مقياس بكسل مستقلة (س) هي الوحدة المفضلة لحجم الخط. لأغراض الوصول، الروبوت يتيح للمستخدمين تخصيص حجم الخط أجهزتهم. المستخدمين الذين لديهم صعوبة في قراءة النص يمكن أن تزيد من حجم الخط أجهزتهم. يمكنك العثور على عادة هذا الخيار في إعداد العرض على الهاتف أو الجهاز اللوحي في ظل حجم الخط. انها غالبا ما تكون متاحة أيضا من خلال إعدادات الوصول.

مع بكسل مستقلة الحجم، 16 ليرة سورية هو بالضبط نفس 16 موانئ دبي عند حجم الخط الجهاز أمر طبيعي أو بنسبة 100٪. ولكن عندما حجم الخط الجهاز كبير، على سبيل المثال 125٪، و 16 ليرة سورية سوف تترجم إلى 20 موانئ دبي أو 1.25 مرة 16.

إذا كنت تستخدم موانئ دبي باعتبارها وحدة لحجم الخط، ثم أن جزء من النص يحتوي على الحجم الفعلي المحدد بغض النظر إذا كان لدى المستخدم تخصيص حجم الخط الجهاز. وسوف تستخدم وحدات س تقديم تجربة أفضل للأشخاص الذين يعانون من ضعف البصر.

المرجع : دورة Udacity ، وجوجل




س: على نطاق بكسل مستقل. يجب استخدامه مع النصوص لأنه يتم تحجيم تلقائيا وفقا لحجم الخط الذي يتم استخدامه من قبل المستخدم في جهازه. بكسل: بكسل أو عنصر صورة هو نقطة واحدة على الشاشة




SDP - وحدة حجم قابلة لل- في الأساس أنها ليست وحدة، ولكن الموارد البعد عن حجم شاشة مختلفة.

حاول SDP مكتبة من يستشعر. انه مفيد جدا لحل المشاكل حدة، ويمكنك دعم بسرعة شاشات متعددة .

استعمال

android:paddingBottom="@dimen/_15sdp"لإيجابية و android:layout_marginTop="@dimen/_minus10sdp"لSDP الحزب الديمقراطي الاجتماعي السلبي

له قيمة تعادل في موانئ دبي لحجم كل في values-sw<N>dpالمجلدات (جنوب غرب = smallestWidth).

انتباه

استخدامها بعناية! في معظم الحالات لا تزال تحتاج إلى تصميم تخطيط مختلف عن أقراص.

مثال

<LinearLayout
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_marginTop="@dimen/_minus10sdp"
          android:paddingBottom="@dimen/_15sdp"
          android:orientation="horizontal" >

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:includeFontPadding="false"
                    android:text="♡"
                    android:textColor="#ED6C27"
                    android:textSize="@dimen/_70sdp"
                    android:textStyle="bold" />

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:includeFontPadding="false"
                    android:text="U"
                    android:textColor="@android:color/black"
                    android:textSize="@dimen/_70sdp" />
            </LinearLayout>

يمكنك استخدام ديسيبل لحجم النص، ولكن أنا أفضل SSP لحجم النص.

لمزيد من التفاصيل، راجع صفحة جيثب مكتبة .




أريد أن توفر طريقة سهلة لفهم dp. في الواقع، أعتقد dpهو أسهل واحد لفهم. dpهو مجرد وحدة طول المادية. انها من نفس البعد كما mmأو inch. انها مريحة فقط بالنسبة لنا لكتابة 50dp، 60dpبدلا من 50/160 inchأو 60/160 inch، لأن واحدا dpهو عادل 1/160 inchمهما كان حجم الشاشة أو القرار.

المشكلة الوحيدة هي أنه نقطة في البوصة الروبوت من بعض الشاشات ليست دقيقة. على سبيل المثال، تصنف على الشاشة ل160dpi قد 170dpi الواقع. وبالتالي فإن حساب نتيجة ل dpهو غامض. يجب أن يكون تقريبا نفس 1/160 inch.




نسبة -موانئ دبي إلى بكسل سوف تتغير مع كثافة الشاشة، ولكن ليس بالضرورة في نسبة مباشرة.

ملاحظة : المترجم يقبل كل من " تراجع " و " موانئ دبي "، على الرغم من " موانئ دبي " هو أكثر اتساقا مع " س ".

بكسل مستقلة على نطاق و - وهذا هو مثل موانئ دبي حدة، ولكن يتم تحجيم أيضا من قبل تفضيل حجم الخط المستخدم.