چند لمسی: حرکت، زوم، چرخش

برای تشخیص حرکات چند لمسی مورد استفاده برای حرکت، بزرگنمایی و چرخش، می توانید از اصلاح کننده 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 استفاده کنید.

{% کلمه به کلمه %} {% آخر کلمه %} {% کلمه به کلمه %} {% آخر کلمه %}