Xamarin.Forms + Prism,整理页面导航跳转流程
3个Page,Page1 -> Page2 -> Page3 -> Page2 -> Page1。
PageViewModel实现接口:INavigatingAware, INavigatedAware, IDestructible
断点位置:
Page:
构造函数
PageViewModel:
构造函数、
Page.Appearing事件(EventToCommand)、Page.Disappearing事件(EventToCommand)、
OnNavigatingTo方法(INavigatingAware接口)、OnNavigatedTo方法(INavigatedAware接口)、OnNavigatedFrom方法(INavigatedAware接口)、
Destroy方法(IDestructible接口)
断点进入顺序:
1、Page1,构造函数
2、Page1ViewModel,构造函数
3、Page1ViewModel,OnNavigatingTo
4、Page1ViewModel,OnNavigatedTo
5、Page1,Appearing
跳转到Page2
6、Page2,构造函数
7、Page2ViewModel,构造函数
8、Page2ViewModel,OnNavigatingTo
9、Page1,Disappearing
10、Page2,Appearing
11、Page1ViewModel,OnNavigatedFrom
12、Page2ViewModel,OnNavigatedTo
跳转到Page3
13、Page3,构造函数
14、Page3ViewModel,构造函数
15、Page3ViewModel,OnNavigatingTo
16、Page2,Disappearing
17、Page3,Appearing
18、Page2ViewModel,OnNavigatedFrom
19、Page3ViewModel,OnNavigatedTo
返回到Page2
20、Page2ViewModel,OnNavigatingTo(使用NavigationService.GoBackAsync时触发,使用硬件返回按钮、NavigationPage返回按钮时不触发)
21、Page3,Disappearing
22、Page2,Appearing
23、Page3ViewModel,OnNavigatedFrom
24、Page2ViewModel,OnNavigatedTo
25、Page3ViewModel,Destroy
返回到Page1
26、Page1ViewModel,OnNavigatingTo(使用NavigationService.GoBackAsync时触发,使用硬件返回按钮、NavigationPage返回按钮时不触发)
27、Page2,Disappearing事件
28、Page1,Appearing事件
29、Page2ViewModel,OnNavigatedFrom
30、Page1ViewModel,OnNavigatedTo
31、Page2ViewModel,Destroy
使用硬件返回按钮,返回到桌面
32、Page1,Disappearing
Xamarin.Forms + Prism,整理页面导航跳转流程的更多相关文章
- Xamarin.Forms的基本页面和基本视图
Xamarin.Forms的基本页面和基本视图 在Xamarin.Forms中,每个App的界面都是一个页面Page.页面的种类有很多种.其中,最常见的页面就是内容页面ContentPage.项目 ...
- 【Xamarin.Forms 3】页面类型
系列目录 微信 1.[Xamarin.Forms 1]App的创建与运行 2.[Xamarin.Forms 2]App基础知识与App启动 知乎 1.[Xamarin.Forms 1]App的创建与运 ...
- Xamarin.Forms+Prism(1)—— 开发准备
本次随笔连载,主要用于记录本人在项目中,用Xamarin.Forms开发APP中所使用的第三方技术或一些技巧. 准备: 1.VS2017(推荐)或VS2015: 2.JDK 1.8以上: 3.Xama ...
- Xamarin.Forms+Prism(3)—— 简单提示UI的使用
这次给大家介绍两个比较好用的提示插件,如成功.等待.错误提示. 准备: 1.新建一个Prism Xamarin.Forms项目: 2.右击解决方案,添加NuGet包: 1)Acr.UserDialog ...
- LINKs: Xamarin.Forms + Prism
LINK 1 - How to use Prism with Xamarin.Forms http://brianlagunas.com/first-look-at-the-prism-for-xam ...
- Xamarin.Forms+Prism(2)—— 基本使用 NavigationService 相对路径和绝对路径
本文主要对Prism框架下的导航服务NavigationService进行一次介绍和使用. 1.打开VS,可以看到左侧的已安装模版里面有: 2.创建完成后,从PCL项目中,看到App.xaml.cs中 ...
- 【Xamarin 开发 IOS --IOS 页面导航概念Segue】
Storyboard里面的几种Segue区别及视图的切换:push,modal,popover,replace和custom 一.视图切换类型介绍在storyboard中,segue有几种不同的类型, ...
- Xamarin.Forms(二) 返回页面的数据刷新
这几天在做一个课程表的小程序,遇到了这样一个问题: app打开便是课程表的页面,如果课程表页面没有数据的话需要跳转到同步课表页面模拟登陆教务管理系统获取课表,并显示在课程表页面,这样就需要从同步课表页 ...
- Xamarin.Forms入门学习路线
Xamarin 介绍 Xamarin是一套跨平台解决方案,目的是使用C#语言创造原生的iOS,Android,Mac和Windows应用. Xamarin的三个优势: Xamarin App拥有原生A ...
随机推荐
- CentOS下的Mysql的安装和使用
1.使用安装命令 :yum -y install mysql mysql-server mysql-devel 安装完成却发现Myserver安装缺失,在网上找原因,原来是因为CentOS 7上把My ...
- Java Base64 加解密
public class base64EncryAndDecry { public static final String CODES = "ABCDEFGHIJKLMNOPQRSTUVWX ...
- Codechef July Challenge 2018 : Subway Ride
传送门 首先(想了很久之后)注意到一个性质:同一条边有多种颜色的话保留3种就可以了,这是因为假如最优解要求当前位置与相邻两条边都不相同,那么只要有3条边,就肯定可以满足这一点. 完事就做一个nlogn ...
- Oracle SQL 内置函数大全(转)
SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数;SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ...
- vscode + electron 提示:无法连接到legacy请采用inspector解决办法
首先,你的程序是可以直接运行的,在命令行中可以运行,只是在vsCode中,运行一段时间就被这个提示弹出. 解决方法: 先在launch.json 中加上"protocol":&qu ...
- Python练手例子(6)
31.请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母. 程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母. letter ...
- Lecture5_1&5_2.随机变量的数字特征(数学期望、方差、协方差)
一.数学期望 1.离散型随机变量的数学期望 设X为离散随机变量,其概率分布为:P(X=xk)=pk 若无穷级数$\sum_{k=1}^{+\infty}x_kp_k$绝对收敛 (即满足$\sum_{k ...
- Windows命令行设置dns
管理员运行cmd 1.dns配置成192.168.1.200 netsh interface ip set dns name="以太网" source=static addr=19 ...
- opencart3属性attribute实现换行等简单html代码
opencart3属性attribute在前台页面默认是没有解析html代码功能的,比如想实现换行,后台这样写:line 1<br>line 2,但前台产品页也是line 1<br& ...
- [ROS]激光驱动安装
参考资料: https://blog.csdn.net/hongliang2009/article/details/73302986 https://blog.csdn.net/bohaijun_12 ...