如何限制仅在 canvas 内显示的可绘制对象?
How to restrict drawables only shown inside canvas?
我有一个 canvas 位于屏幕的右侧。左边是一些按钮。如果一些 drawbles 的 x 值是负数,它们被绘制在左侧,canvas 之外。我怎样才能避免它?
Row {
Button(onClick = {
}) {
Text("File")
}
Canvas(modifier = ...) {
drawPoints(dataPts, PointMode.Points, Color.Blue, strokeWidth = 5f)
}
}
默认情况下,所有 Compose 视图都不会将其内容裁剪到边界之外。
需要剪辑的时候可以加Modifier.clipToBounds
:
Canvas(Modifier.clipToBounds())
或者您可以使用 Modifier.clip
剪裁成特定形状。
我有一个 canvas 位于屏幕的右侧。左边是一些按钮。如果一些 drawbles 的 x 值是负数,它们被绘制在左侧,canvas 之外。我怎样才能避免它?
Row {
Button(onClick = {
}) {
Text("File")
}
Canvas(modifier = ...) {
drawPoints(dataPts, PointMode.Points, Color.Blue, strokeWidth = 5f)
}
}
默认情况下,所有 Compose 视图都不会将其内容裁剪到边界之外。
需要剪辑的时候可以加Modifier.clipToBounds
:
Canvas(Modifier.clipToBounds())
或者您可以使用 Modifier.clip
剪裁成特定形状。