我有一个Windows Phone 8应用程序,我想看看为什么我的主页加载速度很慢。
我的主页具有以下结构:
<PivotControl>
<PivotItem>
<LongListSelector/>
</PivotItem> Times 5
</PivotControl>
我总共有5个PivotItems,每个这些项目都有自己的api调用来获取这些项目,以便可以显示它们。每个“透视”项目首先加载12个元素,并且在用户开始滚动时会加载更多元素。
我的问题是,有人遇到过包含大量元素的笨重主页的问题吗?以及您做了哪些改进,以使页面加载速度更快。我已经减少了显示的元素数量(在每个PivotItem中加载40个元素之前)。
编辑:我的ListItemTemplate非常干净(我已经清理过它以使其在XAMLcode中更轻),它具有一个网格,该网格包含Emglobes和InvokeCommandAction,一个图像,一个边框和3个TextBlocks
Edit2:当用户不在我的PivotItem上时,通过折叠不同的LongListSelector,我获得了大约30%的加载时间,因此我隐藏了2 LongListSelector。当用户向左或向右滑动时,我在中间(当然)和左边显示了PivotItem,我重新加载并隐藏了必要的元素。它不漂亮,但有帮助。
EDIT3:几乎所有(90%)我的样式都已经放置在我的StylePage中,并被调用来对我的元素进行样式设置。我发现在用户进入和离开页面时添加一些动画可以使我在页面之间进行更好的过渡。这是我的经典转换代码:
<toolkit:TransitionService.NavigationInTransition>
<toolkit:NavigationInTransition>
<toolkit:NavigationInTransition.Backward>
<toolkit:TurnstileTransition Mode="BackwardIn" />
</toolkit:NavigationInTransition.Backward>
<toolkit:NavigationInTransition.Forward>
<toolkit:TurnstileTransition Mode="ForwardIn" />
</toolkit:NavigationInTransition.Forward>
</toolkit:NavigationInTransition>
</toolkit:TransitionService.NavigationInTransition>
<toolkit:TransitionService.NavigationOutTransition>
<toolkit:NavigationOutTransition>
<toolkit:NavigationOutTransition.Backward>
<toolkit:TurnstileTransition Mode="BackwardOut" />
</toolkit:NavigationOutTransition.Backward>
<toolkit:NavigationOutTransition.Forward>
<toolkit:TurnstileTransition Mode="ForwardOut" />
</toolkit:NavigationOutTransition.Forward>
</toolkit:NavigationOutTransition>
</toolkit:TransitionService.NavigationOutTransition>
我没有在您的问题中看到两件事,但我想补充一下会对您有所帮助。
这些应该可以使您的UI恢复正常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句