首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

迁移到AndroidX后,findFragmentById对片段返回null

的原因可能是因为片段的ID在迁移过程中发生了变化。AndroidX是一个向后兼容的库,用于替代旧版的Android Support库。在迁移过程中,一些类和方法的名称可能发生了变化,包括片段的ID。

为了解决这个问题,可以尝试以下几个步骤:

  1. 确保在迁移过程中正确地更新了依赖项和库。AndroidX的迁移指南提供了详细的步骤和说明,可以参考官方文档进行操作。
  2. 检查代码中使用的片段ID是否与迁移后的ID匹配。在AndroidX中,片段ID的格式可能发生了变化,例如从android.support.v4.app.Fragment变为androidx.fragment.app.Fragment。确保在使用findFragmentById方法时,传入的ID与迁移后的ID一致。
  3. 如果仍然无法找到片段,可以尝试使用findFragmentByTag方法来查找片段。通过为片段设置一个唯一的标签,在使用findFragmentByTag方法时传入该标签,可以更准确地找到对应的片段。

总结起来,迁移到AndroidX后,findFragmentById对片段返回null的问题可能是由于片段ID的变化导致的。确保正确地更新了依赖项和库,并检查代码中使用的片段ID是否与迁移后的ID匹配。如果问题仍然存在,可以尝试使用findFragmentByTag方法来查找片段。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Jetpack组件之Navigation

首语 Android开发中流行单个Activity嵌套多个Fragment的UI架构模式,但是Fragment的管理比较麻烦。...通过NavigationUI类,菜单、底部导航、抽屉菜单导航进行统一的管理。 主要元素 Navigation Graph。..."androidx.navigation:navigation-compose:1.0.0-alpha07" 创建 Navigation Graph 新建一个Android项目,选择res文件夹—>...当用户通过显式深层链接打开您的应用时,任务返回堆栈会被清除,并被替换为相应的深层链接页面。当用户从深层链接页面按下返回按钮时,他们会返回到相应的导航堆栈。...在这种情况下,如果按下返回按钮,您会返回到上一个应用;如果按下向上按钮,就会在导航图中的父级目的地上启动应用的任务。

3K20
  • 《Android编程权威指南》之UI fragment与fragment管理器

    (真是学无止境呢~) 官方有关 Fragment 的介绍参考: https://developer.android.com/jetpack/androidx/releases/fragment 三、着手开发...fragment是在API 11级系统版本中引入的,为了支持老设备,一个兼容版的Fragment实现被添加到v4支持库版本中,Android 9.0(API 28)的发布,系统框架版的 fragment...就被弃用了,早期支持库版本的fragment也全部被迁移到了Jetpack库中,以后也只对 Jetpack 库版 Fragment 进行升级了,因此,早点迁移吧!...(R.id.flayout_fragment_container) if(currentFragment == null){ val crimeFragment...val currentFragment = supportFragmentManager.findFragmentById(R.id.flayout_fragment_container) 这行代码的缘由

    50820

    Android高频面试专题 - 基础篇(二)Fragment

    是Android 3.0(API 11)提出的,为兼容低版本,v4包中也开发了一套Fragment API,现已移到androidx维护。...注意:除了onCreateView,其他的所有方法如果你重写了,必须调用父类 于该方法的实现 ?...getChildFragmentManager获取 4、Framgnet 之间的通信 Fragment 通过 getActivity 获取到 Activity,Activity通过findFragmentByTag||findFragmentById...如果没有加入回退栈,则用户点击返回按钮会直接将Activity出栈;如果加入了回退栈,则用户点击返回按钮会回滚Fragment事务。...,或者横竖屏切换时,解决办法是只有在savedInstanceState==null时,才进行创建Fragment实例,通过检查onCreate的参数Bundle savedInstanceState就可以判断

    1.4K10

    Android Fragment用法知识点的讲解

    fragmentManager.beginTransaction(); beginTransaction.add(R.id.layout,fragment); beginTransaction.addToBackStack(null...第三步,调用addToBackStack(true)方法,目的为了允许用户通过按下返回按键返回到前一个Fragment状态,beginTransaction.commit()提交。...图片来源官方: 生命周期 onAttach(): 一旦片段与其活动相关联就被调用; onCreate(): 片段被调用创建; onCreateView(): 创建并返回相关的视图结构; onActivityCreated...(): 表示活动已被创建完成了,这里是activity创建成功; onStart(): 片段用户可见; onResume(): 片段与用户开始交互; onPause(): 片段与用户不再交互;...onStop(): 片段不再用户可见; onDestroyView(): 销毁与其View相关资源; onDestroy(): 销毁一切片段; onDetach(): 片段与其活动不再相关联

    1K60

    Android Fragment的用法实例详解

    第三步,调用addToBackStack(true)方法,目的为了允许用户通过按下返回按键返回到前一个Fragment状态,beginTransaction.commit()提交。...onAttach(): 一旦片段与其活动相关联就被调用; onCreate(): 片段被调用创建; onCreateView(): 创建并返回相关的视图结构; onActivityCreated(...): 表示活动已被创建完成了,这里是activity创建成功; onStart(): 片段用户可见; onResume(): 片段与用户开始交互; onPause(): 片段与用户不再交互;...onStop(): 片段不再用户可见; onDestroyView(): 销毁与其View相关资源; onDestroy(): 销毁一切片段; onDetach(): 片段与其活动不再相关联。...在此也非常感谢大家ZaLou.Cn网站的支持!

    1.4K31

    安卓Navigation系列——进阶篇

    Navigation系列——进阶篇 作者 大家好,我叫小琪; 本人16年毕业于中南林业科技大学软件工程专业,毕业在教育行业做安卓开发,后来于19年10月加入37手游安卓团队; 目前主要负责国内发行安卓相关开发...前言 上篇Navigation的一些概念进行了介绍,并在前言中提到了app中常用的一个场景,就是app的首页,一般都会由一个activity+多个子tab组成,这种场景有很多种实现方式,比如可以使用RadioGroup...:navigation-fragment-ktx:2.3.1' implementation 'androidx.navigation:navigation-ui-ktx:2.3.1' 很简单,包含三个页面...icon_tab_mine" android:title="我的" /> 注意:这里item标签的id和上面nav_graph中fragment标签的id一致 资源准备好,...); } return (T) navigator; } 原来报错的信息在这里,这里其实就是通过标签获取对应的navigator,然而在NavHostFragmen执行oncreate

    3K30

    Android入门教程 | Fragment 基础概念

    onCreateView() 系统会在片段首次绘制其界面时调用此方法。如要为片段绘制界面,从此方法中返回的 View 必须是片段布局的根视图。如果片段未提供界面,可以返回 null。...onPause() 系统会将此方法作为用户离开片段的第一个信号(但并不总是意味着此片段会被销毁)进行调用。通常,应在此方法内确认在当前用户会话结束仍然有效的任何更改(因为用户可能不会返回)。...可使用 FragmentManager 执行的操作包括: 通过 findFragmentById()(针对在 Activity 布局中提供界面的片段)或 findFragmentByTag()(针对提供或不提供界面的片段...但请注意,只有在该片段附加到 Activity 时才需调用 getContext()。如果尚未附加该片段,或者其在生命周期结束期间已分离,则 getContext() 返回 null。...Fragment要绘制布局的根视图,当然也可以返回null

    3.5K40

    Android交流会-碎片Fragment,闲聊单位与尺寸

    onAttach(): 一旦片段与其活动相关联就被调用; onCreate(): 片段被调用创建; onCreateView(): 创建并返回相关的视图结构; onActivityCreated(...): 表示活动已被创建完成了,这里是activity创建成功; onStart(): 片段用户可见; onResume(): 片段与用户开始交互; onPause(): 片段与用户不再交互;...onStop(): 片段不再用户可见; onDestroyView(): 销毁与其View相关资源; onDestroy(): 销毁一切片段; onDetach(): 片段与其活动不再相关联。...图片 4.Fragment和activity之间的通信 Fragment和activity之间的通信,FragmentManager的findFragmentById()方法来获取相应碎片的实例。...MyFragment myFragment = getFragmentManager().findFragmentById(R.id.fragment); 接着通过调用getActivity()方法来获取当前片段和相关联的活动实例

    1.2K20

    Android应用界面开发——Fragment(实现图书详情界面)

    ---- Fragment代表了Activity的子模块,因此可以把Fragment理解成Activity片段。 Fragment的几个特征: Fragment总是作为Activity界面的组成部分。...Fragment可调用getActivity()方法获取它所在的Activity,Activity可调用FragmentManager的findFragmentById()或findFragmentByTag...Activity的getFragmentManager()方法可返回FragmentManager,FragmentManager对象的beginTransaction()方法即可开启并返回FragmentTransaction...FragmentManager可以完成如下几方面的功能: 使用findFragmentById()或findFragmentByTag()方法来获取指定Fragment。...可通过FragmentManager来获得FragmentTransaction,代码片段如下: FragmentManager fragmentManager = getFragmentManager

    2.6K20

    22+ 高频实用的 JavaScript 片段 (2020年)

    作者:xor 译者:前端小智 来源:medium 点赞再看,微信搜索 【大世界】 关注这个没有大厂背景,但有着一股向上积极心态人。...废话不多话,在本文中,列出了一些比较常用或者实用的的 JavaScript 代码片段,希望你们有所帮助。...handleFalse() 2.短路或运算 const defaultValue = "SomeDefaultValue" let someValueNotSureOfItsExistance = null...console.log(sayHello('前端小智')) 简写如下: let sayHello = name => `你好,${name}` console.log(sayHello('前端小智')) 14.隐式返回...} console.log(drink) // banana juice ---- 代码部署可能存在的BUG没法实时知道,事后为了解决这些BUG,花了大量的时间进行log 调试,这边顺便给大家推荐一个好用的

    24220
    领券