الفرق بين المراجعتين لصفحة: «ReactNative/usewindowdimensions»

من موسوعة حسوب
لا ملخص تعديل
ط مراجعة
سطر 1: سطر 1:
== الخطّاف useWindowDimensions ==
<noinclude>{{DISPLAYTITLE:الدالة useWindowDimensions في React Native}}</noinclude>
<syntaxhighlight lang="javascript">
يحدّث الخطّاف <code>useWindowDimensions</code> تلقائيًا قيم العرض <code>width</code> والارتفاع <code>height</code> عندما يتغير حجم الشاشة.<syntaxhighlight lang="javascript">
import { useWindowDimensions } from 'react-native';
import { useWindowDimensions } from 'react-native';
</syntaxhighlight>يحدّث الخطّاف <code>useWindowDimensions</code> تلقائيًا قيم العرض <code>width</code> والارتفاع <code>height</code> عندما يتغير حجم الشاشة. يمكنك الحصول على عرض وارتفاع نافذة تطبيقك كما يلي:<syntaxhighlight lang="javascript">
</syntaxhighlight>يمكنك الحصول على عرض وارتفاع نافذة تطبيقك كما يلي:<syntaxhighlight lang="javascript">
const windowWidth = useWindowDimensions().width;
const windowWidth = useWindowDimensions().width;
const windowHeight = useWindowDimensions().height;
const windowHeight = useWindowDimensions().height;
</syntaxhighlight>
</syntaxhighlight>


=== مثال ===
== مثال ==
<syntaxhighlight lang="javascript">
إليك المثال التالي ([https://snack.expo.dev/@hsoubwiki/usewindowdimensions تجربة حية]):<syntaxhighlight lang="javascript">
import React from "react";
import React from "react";
import { View, StyleSheet, Text, useWindowDimensions } from "react-native";
import { View, StyleSheet, Text, useWindowDimensions } from "react-native";
سطر 33: سطر 33:
تأتي الأبعاد [https://github.com/DaniAkash/react-native-responsive-dimensions React Native Responsive Dimensions] أيضًا مع خطافات مستجيبة responsive مع الشاشات.
تأتي الأبعاد [https://github.com/DaniAkash/react-native-responsive-dimensions React Native Responsive Dimensions] أيضًا مع خطافات مستجيبة responsive مع الشاشات.


==== الخصائص ====
== الخاصيات ==


===== <code>fontScale</code> =====
===<code>fontScale</code>===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
useWindowDimensions().fontScale;
useWindowDimensions().fontScale;
</syntaxhighlight>تمثّل مقياس الخط المستخدم حاليًا، إذ تسمح بعض أنظمة التشغيل للمستخدمين بتكبير أو تصغير حجم الخط من أجل القراءة المريحة، حيث ستتيح لك هذه الخاصية معرفة المُستخدَم حاليًا.
</syntaxhighlight>تمثّل مقياس الخط المستخدم حاليًا، إذ تسمح بعض أنظمة التشغيل للمستخدمين بتكبير أو تصغير حجم الخط من أجل القراءة المريحة، حيث ستتيح لك هذه الخاصية معرفة المُستخدَم حاليًا.


===== <code>height</code> =====
===<code>height</code>===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
useWindowDimensions().height;
useWindowDimensions().height;
</syntaxhighlight>تعطي هذه الخاصية ارتفاع النافذة أو الشاشة التي يشغلها تطبيقك مقدرًا بالبكسل.
</syntaxhighlight>تعطي هذه الخاصية ارتفاع النافذة أو الشاشة التي يشغلها تطبيقك مقدرًا بالبكسل.


===== <code>scale</code> =====
===<code>scale</code>===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
useWindowDimensions().scale;
useWindowDimensions().scale;
سطر 52: سطر 52:
تشير القيمة <code>1</code> إلى PPI / DPI بقيمة 96 (76 في بعض المنصات)، وتشير القيمة <code>2</code> إلى عرض Retina أو DPI عالي الجودة.
تشير القيمة <code>1</code> إلى PPI / DPI بقيمة 96 (76 في بعض المنصات)، وتشير القيمة <code>2</code> إلى عرض Retina أو DPI عالي الجودة.


===== <code>width</code> =====
===<code>width</code>===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
useWindowDimensions().width;
useWindowDimensions().width;
سطر 60: سطر 60:


* [https://reactnative.dev/docs/usewindowdimensions صفحة useWindowDimensions في توثيق React Native الرسمي.]
* [https://reactnative.dev/docs/usewindowdimensions صفحة useWindowDimensions في توثيق React Native الرسمي.]
[[تصنيف:ReactNative]]
[[تصنيف:ReactNative API]]

مراجعة 13:46، 6 أكتوبر 2021

يحدّث الخطّاف useWindowDimensions تلقائيًا قيم العرض width والارتفاع height عندما يتغير حجم الشاشة.

import { useWindowDimensions } from 'react-native';

يمكنك الحصول على عرض وارتفاع نافذة تطبيقك كما يلي:

const windowWidth = useWindowDimensions().width;
const windowHeight = useWindowDimensions().height;

مثال

إليك المثال التالي (تجربة حية):

import React from "react";
import { View, StyleSheet, Text, useWindowDimensions } from "react-native";

const App = () => {
  const window = useWindowDimensions();
  return (
    <View style={styles.container}>
      <Text>{`Window Dimensions: height - ${window.height}, width - ${window.width}`}</Text>
    </View>
  );
}
const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: "center",
    alignItems: "center"
  }
});

export default App;

يهدف الخطّاف useDimensions من مجتمع الخطّافات React native hooks إلى تسهيل معالجة التغييرات في حجم الشاشة أو النافذة.

تأتي الأبعاد React Native Responsive Dimensions أيضًا مع خطافات مستجيبة responsive مع الشاشات.

الخاصيات

fontScale

useWindowDimensions().fontScale;

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

height

useWindowDimensions().height;

تعطي هذه الخاصية ارتفاع النافذة أو الشاشة التي يشغلها تطبيقك مقدرًا بالبكسل.

scale

useWindowDimensions().scale;

معدّل بكسلات الجهاز الذي يعمل عليه تطبيقك.

تشير القيمة 1 إلى PPI / DPI بقيمة 96 (76 في بعض المنصات)، وتشير القيمة 2 إلى عرض Retina أو DPI عالي الجودة.

width

useWindowDimensions().width;

تمثّل هذه الخاصية عرض النافذة أو الشاشة التي يشغلها تطبيقك مقدّرًا بالبكسل.

مصادر