RepeatedLayout

يكرر بشكل دوري نمطًا في نافذة الاقتصاص، وهو مناسب لتحريك المقاييس والبوصلات بشكل مستمر. يقوم period بتعيين الفاصل الزمني للتكرار، ويحدد value وanchor مكان محاذاة القيمة الحالية.

مثال

function main() {
  return (
    <RepeatedLayout axis="horizontal" period={120} value={76} anchor={0.5}>
      <Text width={120}>N</Text>
    </RepeatedLayout>
  );
}

الاستخدام

  • children نمط واحد وperiod دوريته. value يحاذي anchor؛ زيادته تحرك النمط بالعكس ثم يضاف offset بالنقاط. both يكرر على محورين، ويمكن فصل {x,y}. تُقص المحتويات ضمن النافذة دائمًا.
  • تُطبّق x/y وtransform بعد التخطيط. تحريك عنصر لا يدفع إخوته؛ استخدم spacing أو Spacer للفواصل. الدوران والتحجيم يؤثران في الرسم كاملًا.

الخصائص

children?ViewContent

محتوى الرسم الفرعي.

axis?"horizontal" | "vertical" | "both"

تكرار horizontal أو vertical أو both؛ both ينشئ شبكة نسخ.

مثال"horizontal"

المسافة بين النسخ بالنقاط؛ x/y يضبطان كل محور على حدة.

مثال360

إحداثي المحتوى الموضوع عند anchor. زيادته تحرك النسخ عكسياً؛ ليس سرعة.

مثال$data.current.heading?.direction ?? 0

موضع نسبي داخل مجال العرض: 0 بداية، 0.5 وسط، 1 نهاية.

مثال0.5

إزاحة إضافية بالنقاط بعد محاذاة value مع anchor.

مثال0
alignment?"topLeading" | "top" | "topTrailing" | "leading" | "center" | "trailing" | "bottomLeading" | "bottom" | "bottomTrailing"

محاذاة العناصر المتراكبة إلى تسعة مواضع على الحواف والوسط.

مثال"topLeading"
الخصائص المشتركة
width?number | "auto" | "fill"

العرض بالنقاط أو الحجم التلقائي أو ملء العنصر الأب.

مثال100
height?number | "auto" | "fill"

الارتفاع بالنقاط أو الحجم التلقائي أو ملء العنصر الأب.

مثال80
padding?number

المساحة الداخلية للمحتوى بالنقاط.

مثال0
x?number

إزاحة بصرية بالنقاط: x يميناً وy لأسفل، دون تغيير المساحة في التخطيط.

مثال0
y?number

إزاحة بصرية بالنقاط: x يميناً وy لأسفل، دون تغيير المساحة في التخطيط.

مثال0
transform?ViewTransform

تحويل View كله دون تغيير التخطيط. الإزاحة بالنقاط، الدوران والميل بالدرجات، المقياس 1 بلا تغيير، والمرساة 0–1.

مثال{rotation: 0}
background?Paint

لون أو تدرج للخلفية؛ clear يجعلها شفافة.

مثال"clear"
opacity?number

عتامة View بالكامل: 0 شفاف و1 معتم.

مثال1
cornerRadius?number

نصف قطر الزوايا بالنقاط.

مثال0
clip?"rectangle" | "ellipse"

شكل القص rectangle أو ellipse؛ يقبل Material أيضاً false لتعطيله.

مثال"rectangle"
mask?View | null

عرض قناع ألفا. يتم توسيطه دون التأثير على التخطيط؛ تعطل null القناع.

مثال<Circle width="fill" height="fill" background="white"/>
zIndex?number

ترتيب الرسم بين العناصر الشقيقة؛ القيم الأكبر في الأمام.

مثال0
blur?number

نصف قطر التمويه بالنقاط؛ 0 يعطّله.

مثال4
innerShadow?DrawingEffect

لون التأثير وعتامته ونصف قطر تمويهه وإزاحة x/y؛ المسافات بالنقاط.

مثال{color: HDR("black"), opacity: 0.5, radius: 4, x: 0, y: 2}

لون التأثير وعتامته ونصف قطر تمويهه وإزاحة x/y؛ المسافات بالنقاط.

مثال{color: HDR("cyan"), radius: 8, opacity: 0.8}
shadowColor?Color

لون الظل الخارجي.

مثالHDR("black")
shadowOpacity?number

عتامة الظل من 0 إلى 1؛ 0 يخفيه.

مثال0
shadowRadius?number

نصف قطر تمويه الظل الخارجي بالنقاط.

مثال4
shadowX?number

إزاحة الظل بالنقاط: x يميناً وy لأسفل.

مثال0
shadowY?number

إزاحة الظل بالنقاط: x يميناً وy لأسفل.

مثال2
animations?Animation[]

تحريك تغير الخاصية. duration/delay بالثواني، from/to للنهايات، repeat/autoreverse للتكرار وwrap للدورة.

مثال[{property: "opacity", duration: 0.25, curve: "easeInOut"}]
key?string | number

معرّف ثابت بين العناصر الشقيقة.

مثال عملي

function main() {
  return (
    <RepeatedLayout
      width={240}
      height={140}
      axis="both"
      period={{ x: 80, y: 50 }}
      value={{ x: 40, y: 25 }}
      anchor={{ x: 0.5, y: 0.5 }}
      alignment="center"
    >
      <Symbol name="plus" fontSize={20} color={$env.accent} />
    </RepeatedLayout>
  );
}

الحركة

الحركة

widthheightpaddingxyopacitybackgroundcornerRadiusblurshadowColorshadowOpacityshadowRadiusshadowXshadowYperiodvalueanchoroffsettransform.translateXtransform.translateYtransform.scaleXtransform.scaleYtransform.rotationtransform.skewXtransform.skewYtransform.anchorXtransform.anchorYperiod.xperiod.yvalue.xvalue.yanchor.xanchor.yoffset.xoffset.y

عند الإغفال

الجدول يوضح سلوك الإغفال المتحقق من التنفيذ؛ الأمثلة ليست افتراضيات. لنتيجة ثابتة مرر قيمة صريحة؛ الأبعاد وألوان الثيم متغيرة بحسب السياق.

الخصائصعند الإغفال
axis"horizontal"
period360
value0
anchor0.5
offset0
alignment"topLeading"