提问人:C0NTRERAS 提问时间:11/10/2023 更新时间:11/14/2023 访问量:70
如何在 MAUI 控件中获取点击手势动画?
How can I get the tap gesture animation in a MAUI control?
问:
如何像 Jetpack compose 一样在控件上获取点击动画,就像 Jetpack compose 执行可单击修改器一样。在 Jetpack compose 中,当您设置可点击修饰符时,控件将具有非常漂亮的点击动画。
在 MAUI 中,我尝试使用 TapGestureRecognizer。当然,它获取事件或绑定到一个好的命令。但我没有得到控件上的动画。
<Grid Grid.Row="1" Padding="8" Background="red">
<Grid.GestureRecognizers>
<TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped"/>
</Grid.GestureRecognizers>
<HorizontalStackLayout>
<Image Source="settings.svg" HeightRequest="16" WidthRequest="16" />
<Label Text="SETTINGS" />
</HorizontalStackLayout>
</Grid>
如何在不使用按钮的情况下在 Maui 控件中获取点击动画?
答:
0赞
Alexandar May - MSFT
11/10/2023
#1
对于您想要实现的 MAUI 中的涟漪效应(如 Jetpack compose 中的可点击修饰符),您需要 ,但是,这尚未实现,并且有一个建议:TouchEffect 在 MAUI 社区工具包中解决这个问题。您可以在提案中添加注释,以添加控件的涟漪效应。TouchEffect
现在,您可以使用 MAUI 处理程序更改 Android 上按钮的涟漪效果,如下所示:
Microsoft.Maui.Handlers.ButtonHandler.Mapper.AppendToMapping("MyRippleCustomization", (handler, view) =>
{
#if ANDROID
if (handler.PlatformView.Background is Android.Graphics.Drawables.RippleDrawable ripple )
{
ripple.SetColor(Android.Content.Res.ColorStateList.ValueOf(Android.Graphics.Color.Gray));
};
#endif
});
评论
0赞
C0NTRERAS
11/14/2023
不是在寻找旋转动画。我希望能像点击按钮一样产生涟漪效应。我想将这种效果附加到常规容器上,例如网格或框架。
0赞
Alexandar May - MSFT
11/14/2023
@C0NTRERAS 感谢您的回复,您可以看到我更新的答案。
0赞
C0NTRERAS
11/14/2023
谢谢,亚历克斯。我会一直保持这篇文章的开放状态,直到 MAUI 有更新。
0赞
Alexandar May - MSFT
11/15/2023
感谢您的回复,我也会密切关注。
评论
Grid
TapGestureRecognizer