如何在 Xamarin Forms 中按顺序显示(出现)元素
Posted
技术标签:
【中文标题】如何在 Xamarin Forms 中按顺序显示(出现)元素【英文标题】:How to show (appear) elements in order in Xamarin Forms 【发布时间】:2021-02-27 21:36:46 【问题描述】:我有一个按钮网格 (2 x 3),对于我的应用程序,它将始终是固定大小的菜单。
我想在开始时按出现的顺序显示它们,但有一点延迟(从左到右,从上到下)。
我试过这种方式:
在 onAppearing 方法中使用 FadeTo 动画和延迟来按顺序显示元素:
await schedule_label_shadow.FadeTo(0, 1);
await schedule_label.FadeTo(0, 1);
await employees_label.FadeTo(0, 1);
await employees_label_shadow.FadeTo(0, 1);
await schedule_label.FadeTo(1, 250);
await schedule_label_shadow.FadeTo(1, 250);
await employees_label.FadeTo(1, 250);
await employees_label_shadow.FadeTo(1, 250);
它可以工作,但我必须先淡出,所以元素不会在开始时显示。但是,这似乎不是制作此类动画的正确或有效方式。我也想尝试 isVisible (true/false),但被告知这是一种不好的做法,因为它会阻塞 UI 线程。
你能告诉我我做对了还是指出了正确的方向?
【问题讨论】:
嗨,你能分享一张想要效果的 gif 吗?检查哪种方式最好会很有帮助。 【参考方案1】:您需要在 schedule_label_shadow 和其他视图中设置 opacity = 0。您也可以从 xaml 设置属性。
schedule_label.Opacity = 0;
然后删除
await schedule_label_shadow.FadeTo(0, 1);
【讨论】:
以上是关于如何在 Xamarin Forms 中按顺序显示(出现)元素的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Xamarin.Forms 显示警报框以进行验证?