1、Activity 与 Fragment 之间常见的几种通信方式
答:1.使用Bundle:在activity中建一个bundle,把要传的值存入bundle,然后通过fragment的setArguments(bundle)传到fragment,在fragment中,用getArguments接收。这个方法能保证在 fragment 销毁重建后依然能获取到传递过来的数据。
2.采用接口回调的方式。
3.EventBus。
2.谈谈 Android 中几种 LaunchMode 的特点和应用场景?
答:LaunchMode 有4种。
1、standard:Activity默认的启动模式。每次启动一个activity,就会创建一个实例,并置于栈顶。
2、singleTop:如果任务栈栈顶有该activity实例,就复用该实例,并调用onNewIntent(),如果没有就创建新的实例并入栈到栈顶。一般会将推送消息展示的activity指定为singTop,以便复用。
3、singleTask:如果任务栈中存在该activity实例,则直接使用该实例,将它置于栈顶,而它之上的其他activity纷纷出栈。如果不存在,则创建新的实例。一般会将具有程序入口等启动页面的activity指定为singleTask,这样可以避免在启动页退出的时候因存在多个实例而需要反复点击才能退出应用的问题。
4、singleInstance:系统将创建一个独立的任务栈来专门储存与管理该activity(该activity具有全局唯一性,这个任务栈只有这一个activity),这样返回时&#