عملی را که هنگام کشیدن انگشت کاربر روی طرحبندی انجام میشود، مشخص میکند. سرعت توالی حرکت و حرکت نمای هدف تحت تأثیر سرعت و جهت کشیدن انگشت قرار میگیرد، مشروط به محدودیتهایی که با پارامترهای اختیاری تعیین میکنید.
میتواند چندین گره <OnSwipe> برای یک <Transition> وجود داشته باشد که هر <OnSwipe> جهت کشیدن انگشت را مشخص میکند و زمانی که کاربر آن ضربه را انجام میدهد، عمل متفاوتی را انجام میدهد.
نحو
<OnSwipe motion:touchAnchorId="@id/target_view" motion:touchAnchorSide="side" [ motion:dragDirection="direction" ] [ motion:dragScale="scale" ] [ motion:maxVelocity="maxVelocity" ] [ motion:maxAcceleration="maxAcceleration" ] />
صفات
-
motion:touchAnchorId - نمایی که با کشیدن انگشت در حال جابجایی است.
-
motion:touchAnchorSide - سمت نمای هدف که تند کشیدن به آن متصل است.
MotionLayoutفاصله ثابتی بین لنگر و انگشت کاربر حفظ می کند. مقادیر قابل قبول"left"،"right"،"top"و"bottom"هستند. -
motion:dragDirection - جهت حرکت سوایپ کاربر. اگر این ویژگی تنظیم شده باشد، این
<OnSwipe>فقط برای کشیدن انگشت در جهت مشخص اعمال می شود. مقادیر قابل قبول"dragLeft"،"dragRight"،"dragUp"و"dragDown"هستند. -
motion:dragScale فاصله حرکت نمایش را نسبت به طول تند کشیدن کنترل می کند. مقدار پیشفرض 1 است، که نشان میدهد نما تا جایی که کشیدن حرکت میکند حرکت میکند. اگر
dragScaleکمتر از 1 باشد، نمای کمتر از فاصله کش رفتن حرکت میکند. به عنوان مثال،dragScale0.5 به این معنی است که اگر کش رفتن 4 سانتی متر حرکت کند، نمای هدف 2 سانتی متر حرکت می کند.اگر
dragScaleبزرگتر از 1 باشد، نمای دورتر از فاصله کش رفتن حرکت می کند. به عنوان مثال،dragScale1.5 به این معنی است که اگر کشیدن انگشت 4 سانتی متر حرکت کند، نمای هدف 6 سانتی متر حرکت می کند.-
motion:maxVelocity حداکثر سرعت نمای هدف
-
motion:maxAcceleration حداکثر شتاب نمای هدف.