برای تشخیص دادن اشارههای چندلمسی که برای حرکت عرضی، زوم کردن، و چرخاندن استفاده میشود، میتوانید از اصلاحگر transformable استفاده کنید. این اصلاحگر عناصر را بهخودی خود تبدیل نمیکند، فقط اشارهها را تشخیص میدهد.
@Composable private fun TransformableSample() { // set up all transformation states var scale by remember { mutableFloatStateOf(1f) } var rotation by remember { mutableFloatStateOf(0f) } var offset by remember { mutableStateOf(Offset.Zero) } val state = rememberTransformableState { zoomChange, offsetChange, rotationChange -> scale *= zoomChange rotation += rotationChange offset += offsetChange } Box( Modifier // apply other transformations like rotation and zoom // on the pizza slice emoji .graphicsLayer( scaleX = scale, scaleY = scale, rotationZ = rotation, translationX = offset.x, translationY = offset.y ) // add transformable to listen to multitouch transformation events // after offset .transformable(state = state) .background(Color.Blue) .fillMaxSize() ) }
اگر نیاز دارید بزرگنمایی، حرکت افقی، و چرخش را با اشارههای دیگر ترکیب کنید، میتوانید از
PointerInputScope.detectTransformGestures
آشکارساز استفاده کنید.
توصیهشده برای شما
- توجه: نوشتار پیوند وقتی جاوا اسکریپت خاموش است نمایش داده میشود
- آشنایی با اشارهها