الفرق بين المراجعتين لصفحة: «Cordova/cordova plugin screen orientation»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط تدقيق |
||
سطر 2: | سطر 2: | ||
[[تصنيف: Cordova]] | [[تصنيف: Cordova]] | ||
[[تصنيف: Plugin]] | [[تصنيف: Plugin]] | ||
تُستخدَم إضافة اتجاه الشاشة (cordova-plugin-screen-orientation) للتحكم باتجاه الشاشة (عبر ضبطها إلى اتجاه محدَّد أو منع تغيير الاتجاه) بشكل موحَّد في المنصات iOS وأندرويد و windows-uwp. تعتمد هذه الإضافة على [http://www.w3.org/TR/screen-orientation/ الواجهة البرمجية لاتجاه الشاشة]، حتى تتطابق مع المواصفات الحالية. | |||
تضيف هذه الإضافة العناصر التالية إلى كائن الشاشة | تضيف هذه الإضافة العناصر التالية إلى كائن الشاشة <code>window.screen</code>: | ||
<syntaxhighlight lang="javascript">// | <syntaxhighlight lang="javascript">// منع تغيير اتجاه الشاشة | ||
.orientation.lock('portrait') | .orientation.lock('portrait') | ||
// | // السماح بتغيير اتجاه الشاشة | ||
.orientation.unlock() | .orientation.unlock() | ||
// الاتجاه الحالي | // الاتجاه الحالي | ||
سطر 31: | سطر 31: | ||
تحرير التوجيه، بحيث تُدعم جميع الاتجاهات. | تحرير التوجيه، بحيث تُدعم جميع الاتجاهات. | ||
==طريقة الاستخدام== | ==طريقة الاستخدام== | ||
<syntaxhighlight lang="javascript">// تعين الاتجاه إلى أحد الوضعين الأفقيين | إليك المثال التالي الذي يشرح كيفية استخدام الاضافة بشكل مبسَّط:<syntaxhighlight lang="javascript">// تعين الاتجاه إلى أحد الوضعين الأفقيين | ||
screen.orientation.lock('landscape'); | screen.orientation.lock('landscape'); | ||
// إتاحة إدارة الاتجاه من قِبل المستخدم | // إتاحة إدارة الاتجاه من قِبل المستخدم | ||
سطر 41: | سطر 41: | ||
==الأحداث== | ==الأحداث== | ||
ستُطلق كلٌّ من منصتي أندرويد و iOS الحدث <code>orientationchange</code> من الكائن <code>window</code>. في هذا الإصدار من الإضافة، استخدم الكائن <code>window</code> إن كنت تريد طريقة للتنبيه بتغيير الاتجاه. | ستُطلق كلٌّ من منصتي أندرويد و iOS الحدث <code>orientationchange</code> من الكائن <code>window</code>. في هذا الإصدار من الإضافة، استخدم الكائن <code>window</code> إن كنت تريد طريقة للتنبيه بتغيير الاتجاه. اطلع على الشيفرة التالية مثلًا: <syntaxhighlight lang="javascript">window.addEventListener("orientationchange", function(){ | ||
<syntaxhighlight lang="javascript">window.addEventListener("orientationchange", function(){ | |||
console.log(screen.orientation.type); // مثلا الوضع العمودي | console.log(screen.orientation.type); // مثلا الوضع العمودي | ||
});</syntaxhighlight> | });</syntaxhighlight> | ||
في الشيفرة | في الشيفرة التالية، سنُضيف مُنصتًا (listener) للحدث <code>change</code> في الكائن <code>screen.orientation</code>: <syntaxhighlight lang="javascript">screen.orientation.addEventListener('change', function(){ | ||
console.log(screen.orientation.type); // مثلا الوضع العمودي | console.log(screen.orientation.type); // مثلا الوضع العمودي | ||
}); | }); | ||
سطر 58: | سطر 56: | ||
لن تُحدَّث الخاصية <code>screen.orientation</code> عندما [http://www.quirksmode.org/dom/events/orientationchange.html يُدار الهاتف 180 درجة]. | لن تُحدَّث الخاصية <code>screen.orientation</code> عندما [http://www.quirksmode.org/dom/events/orientationchange.html يُدار الهاتف 180 درجة]. | ||
== ملاحظات حول منصة | == ملاحظات حول منصة Windows UWP == | ||
لن تَعرض تطبيقات متجر ويندوز (windows-uwp) تغييرات الاتجاه إلّا إن كان الجهاز مُزودًا بمقياسٍ للتسارع (accelerometer). | لن تَعرض تطبيقات متجر ويندوز (windows-uwp) تغييرات الاتجاه إلّا إن كان الجهاز مُزودًا بمقياسٍ للتسارع (accelerometer). ستُحفَظ الحالة الداخلية للكائن <code>orientation</code>، ولكن لن يتم تدوير الشاشة فعليًا ما لم يكن الجهاز يدعم ذلك. | ||
== سجِل التغييرات == | == سجِل التغييرات == | ||
يمكنك زيارة [https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-screen-orientation/index.html#Changelog صفحة التوثيق الرسمي] لمطالعة تاريخ التغييرات على هذه الإضافة. | يمكنك زيارة [https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-screen-orientation/index.html#Changelog صفحة التوثيق الرسمي] لمطالعة تاريخ التغييرات على هذه الإضافة. | ||
== انظر | == انظر أيضًا == | ||
* إضافة <nowiki/>[[Cordova/cordova plugin device|حالة الجهاز]] | * إضافة <nowiki/>[[Cordova/cordova plugin device|حالة الجهاز]] | ||
* إضافة [[Cordova/cordova plugin splashscreen|شاشة البدء]] | * إضافة [[Cordova/cordova plugin splashscreen|شاشة البدء]] |
مراجعة 11:15، 24 ديسمبر 2018
تُستخدَم إضافة اتجاه الشاشة (cordova-plugin-screen-orientation) للتحكم باتجاه الشاشة (عبر ضبطها إلى اتجاه محدَّد أو منع تغيير الاتجاه) بشكل موحَّد في المنصات iOS وأندرويد و windows-uwp. تعتمد هذه الإضافة على الواجهة البرمجية لاتجاه الشاشة، حتى تتطابق مع المواصفات الحالية.
تضيف هذه الإضافة العناصر التالية إلى كائن الشاشة window.screen
:
// منع تغيير اتجاه الشاشة
.orientation.lock('portrait')
// السماح بتغيير اتجاه الشاشة
.orientation.unlock()
// الاتجاه الحالي
.orientation
التثبيت
يمكن تثبيت هذه الإضافة عبر الأمر التالي:
cordova plugin add cordova-plugin-screen-orientation
الاتجاهات المدعومة
portrait-primary
يمثل هذا الاتجاه الوضع العمودي الأولي (primary portrait mode).
portrait-secondary
الوضع العمودي الثانوي (secondary portrait mode).
landscape-primary
الوضع الأفقي الأولي (primary landscape mode).
landscape-secondary
الوضع الأفقي الثانوي (secondary landscape mode).
portrait
الوضع العمودي الأولي أو الثانوي (sensor).
landscape
الوضع الأفقي الأولي أو الثانوي (sensor).
any
تحرير التوجيه، بحيث تُدعم جميع الاتجاهات.
طريقة الاستخدام
إليك المثال التالي الذي يشرح كيفية استخدام الاضافة بشكل مبسَّط:
// تعين الاتجاه إلى أحد الوضعين الأفقيين
screen.orientation.lock('landscape');
// إتاحة إدارة الاتجاه من قِبل المستخدم
screen.orientation.unlock();
// الحصول على الاتجاه الحالي
console.log('Orientation is ' + screen.orientation.type);
الأحداث
ستُطلق كلٌّ من منصتي أندرويد و iOS الحدث orientationchange
من الكائن window
. في هذا الإصدار من الإضافة، استخدم الكائن window
إن كنت تريد طريقة للتنبيه بتغيير الاتجاه. اطلع على الشيفرة التالية مثلًا:
window.addEventListener("orientationchange", function(){
console.log(screen.orientation.type); // مثلا الوضع العمودي
});
في الشيفرة التالية، سنُضيف مُنصتًا (listener) للحدث change
في الكائن screen.orientation
:
screen.orientation.addEventListener('change', function(){
console.log(screen.orientation.type); // مثلا الوضع العمودي
});
// أو
screen.orientation.onchange = function(){console.log(screen.orientation.type);
};
ملاحظات حول أندرويد
لن تُحدَّث الخاصية screen.orientation
عندما يُدار الهاتف 180 درجة.
ملاحظات حول منصة Windows UWP
لن تَعرض تطبيقات متجر ويندوز (windows-uwp) تغييرات الاتجاه إلّا إن كان الجهاز مُزودًا بمقياسٍ للتسارع (accelerometer). ستُحفَظ الحالة الداخلية للكائن orientation
، ولكن لن يتم تدوير الشاشة فعليًا ما لم يكن الجهاز يدعم ذلك.
سجِل التغييرات
يمكنك زيارة صفحة التوثيق الرسمي لمطالعة تاريخ التغييرات على هذه الإضافة.
انظر أيضًا
- إضافة حالة الجهاز
- إضافة شاشة البدء
- دليل تطوير الإضافات في كوردوفا