Windows Phone 数据保存和显示

目前的智能手机几乎都支持了多任务,人们也喜欢同时使用很多个软件,比如开个音乐app听歌,然后后台开着微信,qq之类的,和同学等有一搭没一搭的闲聊的,然后开着知乎之类的刷刷这玩,但是由于手机的内存有限,不能不节制地同时运行着多个app,所以在内存不多的时候,系统会关掉一部分app,来释放出内存给其他app使用。

但是如果你在一个app的某一个页面填写信息,你要填个比较长的信息的时候,你换到别人的app,,换回来的时候发现app被后台关了,之前填的数据没有了,你绝对会不爽的,这个时候就需要在被后台关闭的时候来调用信息的保存,然后在唤醒的时候,将数据填充上

这部分就需要对WP的生命周期的理解了,我们在首次进入的时候调用

  private void Application_Launching(object sender, LaunchingEventArgs e)
        {
            Appdata = "进入的时间载入";
        }
在被唤醒的时候
  // 激活应用程序(置于前台)时执行的代码
        // 此代码在首次启动应用程序时不执行
        private void Application_Activated(object sender, ActivatedEventArgs e)
        {
            if (e.IsApplicationInstancePreserved)
            {
                return;
            }

            if (PhoneApplicationService.Current.State.ContainsKey("data"))
            {
                Appdata = PhoneApplicationService.Current.State["data"] as string + "重新启动";
            }
        }
在被后台关闭的时候
 private void Application_Deactivated(object sender, DeactivatedEventArgs e)
        {
            if (!string.IsNullOrEmpty(Appdata))
            {
                PhoneApplicationService.Current.State["data"] = Appdata;
            }
        }

然后在相应的需要保存数据的页面上
    bool isNewPage = false;

        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            if (isNewPage)
            {
                if (!string.IsNullOrEmpty((Application.Current as App).Appdata))
                {
                    txt.Text = (Application.Current as App).Appdata;
                }

                isNewPage = false;
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值