就在今天我理解了Android四种启动方式的使用就在昨天我还在迷茫不知如何使用
可能世界就是这么神奇吧,真正意义的理解不是别人灌输而来的心情是不一样的
先来说说第一种启动方式吧
Standard: 这种模式就是我们平时使用的模式你跳转一次我就创建一个页面
SingleTop: 这种启动模式是如果我从A->B - >B 的时候如果B 在栈顶就直接使用
其实这些我们都明白主要是应用场景,就说说最近吧我的一个项目公司要求当我们的code等于-1的时候就提示登录失效
去重新登录然后我就加了一下判断当code等一-1的时候让他去进入登录界面可是一个界面不可能是只有一个接口随后我
就发现我的登录界面就进入了无数次(夸张)后来我就想怎么去让他只进入一次,毕竟是新手遇到了不知道该如何去处理,正好
前几天我同事遇见一个问题就是他的清单文件里面所有的aty都加上了SingleInstance这个启动方式我就问他为啥你要加这个
当时的回答就让我醉了,他告诉我说加上这个界面就不会翻转了就是横屏(他告诉我是问的他朋友,我想估计是坑他的),然后就让他把
删除掉了让他用这个去控制横竖屏setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
其实网上这类东西很多,好吧言归正传,然后我当时就突然想起来还有设计模式这种东西就试了试singletop,然后运行了一下就成了
其实这种摸索的心情和收获是非常好的,可能这就是我敲代码的动力吧
SingTask : 这个模式是如果activity已经处于任务栈中的话他会摧毁在他上面的acitivity ,
我也想到一种应用场景那就是给MainAcitivity 一般的话如果我们进入的界面非常多又懒得去记录销毁的界面
我们就可以直接跳转MainActivity,这样就可以直接销毁他前面的界面了 怎么样是不是很好.
singleInstance: 这个模式网上查的是全局单例模式,只要整个系统中创建过此activity的话就不再创建,不是很理解
目前还没有用到过所以期待以后的更新吧.