我正在尝试解决游戏中 AdMob 控件的一些问题,并且该控件需要一些时间来加载(它会劫持 UI 线程长达 1 秒)。是否可以加载一次控件,然后将其存储在某处并将其附加到后续页面的可视化树中?
或者这不能完成,我必须找到其他方法?
我正在尝试解决游戏中 AdMob 控件的一些问题,并且该控件需要一些时间来加载(它会劫持 UI 线程长达 1 秒)。是否可以加载一次控件,然后将其存储在某处并将其附加到后续页面的可视化树中?
或者这不能完成,我必须找到其他方法?
是的你可以。您需要在该页面上保存该控件的状态。
请参阅此 MSDN 文档了解 windows phone 7 的状态
我希望你能从中得到更好的想法
更新 ====
Deployment.Current.Dispatcher.BeginInvoke(new System.Action(delegate()
{
// Load Your Control Here
}));
它不会冻结您的用户界面
您可以在运行时简单地在页面上添加控件:
this.LayoutRoot.Children.Add( control )
如果您静态定义控件,则可以在 OnNavigatingFrom 事件上将其从当前页面中删除,然后将其加载到下一页或类似内容中,以防止多个父级崩溃。