使用AndroidX后,Activities和Fragments的开发方式变化

构造器中传入布局ID

从AndroidX AppCompat 1.1.0和Fragment 1.1.0开始,可以使用以layoutId作为AppCompatActivity、FragmentActivity、Fragment的构造函数的参数。

这种方法可以减少Activities和Fragments中方法重写的数量,增加了代码的可读性,如果onCreate中只有setContentView方法的话甚至都不需要重写onCreate。对Fragment为来说,onCreateView方法也不用重写。

Fragments测试

从AndroidX Fragment 1.1.0开始,Fragment测试工件就可用了,提供了FragmentScenario类,可以帮助在测试中实例化该Fragment并单独测试它。

使用FragmentFactory

可以通过指定FragmentFactory类来使用带参数的构造函数,具体做法是通过在FragmentManager中注册FragmentFactory,可以覆盖实例化片段的默认方式。

灵活的注册回调

引入AndroidX中提供的api以后,可以将某些业务逻辑从Activities或Fragments中剥离出来。开发方式可以改变为,获取提供某些功能的接口并向其注册处理回调,而不是重写Activity或Fragment中的方法。从而实现更高的灵活性。

从Activities获取OnBackPressedDispatcher,注册返回按键监听事件。

从Activities或Fragments获取SavedStateRegistry,然后注册SavedStateProvider。

Android 16 中的"预测返回"功能会如何改变用户的导航体验呢?

https://www.zhihu.com/question/9953604273/answer/2035446677134366389

相关推荐
JMchen1235 个月前
第 6 篇|Fragment 碎片化艺术 —— 构建灵活可复用 UI 模块
fragment·android 零基础·android 底部导航·ui 适配·android 组件·fragment 通信
灵感菇_8 个月前
Android Fragment全面解析
android·生命周期·fragment
哈哈~haha10 个月前
UI5_Walkthrough_Step 16: 对话框(Dialogs)和片段(Fragments)
dialog·ui5·fragment
个案命题1 年前
鸿蒙Ability对比Android的Fragment
android·华为·harmonyos·鸿蒙·fragment
缘来的精彩1 年前
Kotlin FragmentTransaction多容器管理多个fragment
android·kotlin·transaction·fragment
kidding7232 年前
前端VUE3的面试题
前端·typescript·compositionapi·fragment·teleport·suspense
命运之手2 年前
【Android】Fragment中监听Backpress返回键
android·fragment·backpress
飞鸟真人2 年前
使用supportFragmentManager管理多个fragment切换
android·tab·fragment·fragmentmanager
野猿新一3 年前
Android中向Fragment传递数据
android·fragment