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

为什么我的onCreate总是在使用安卓导航组件返回到分片时触发?

在安卓开发中,onCreate方法是Activity生命周期中的一个重要方法,它在Activity第一次创建时被调用。然而,在使用安卓导航组件返回到分片时,onCreate方法总是被触发的原因可能有以下几个方面:

  1. 分片的重新创建:当使用安卓导航组件返回到分片时,系统可能会销毁当前的分片,并重新创建它。这会导致onCreate方法被调用。
  2. 分片的状态保存和恢复:安卓导航组件通常会自动保存和恢复分片的状态。当返回到分片时,系统会尝试恢复分片的状态,并重新创建它。这也会导致onCreate方法被调用。
  3. 分片的初始化设置:在某些情况下,当返回到分片时,系统可能需要重新初始化一些设置或数据。这可能需要在onCreate方法中进行相应的操作。

为了解决这个问题,你可以考虑以下几个方面:

  1. 检查导航组件的使用:确保你正确地使用了安卓导航组件,并且在返回到分片时没有额外的操作导致分片的重新创建。
  2. 检查分片的状态保存和恢复:确保你正确地保存和恢复了分片的状态。可以使用Bundle对象来保存和恢复分片的数据。
  3. 检查分片的初始化设置:如果在返回到分片时需要重新初始化设置或数据,可以考虑将这些操作放在onCreate方法之外的其他地方,例如onResume方法中。

总之,当使用安卓导航组件返回到分片时,onCreate方法被触发可能是由于分片的重新创建、状态保存和恢复、以及初始化设置等原因导致的。通过检查导航组件的使用、分片的状态保存和恢复,以及分片的初始化设置,可以解决这个问题。

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

相关·内容

WebView 做一个“套壳”应用

本文主要讲解如何制作一个原生“壳”来加载我们 H5 网页,最终实现一个简单 Hybrid App(套壳应用)。...2.4 使用虚拟机运行应用 我们开发时候可以随时使用模拟器来预览我们应用,也可以将手机连接到电脑上进行调试(这里就不展开了)。...如果没有安装虚拟机的话,需要点击窗口顶部菜单栏 [ Tools -> AVD Manager ] 进入 AVD 管理器安装虚拟机(模拟器)。...一般来说在应用中触发返回操作应该是返回到上一个浏览页面,没有上一个页面时才会退出应用。...android:usesCleartextTraffic="true"> 可以看到我本地 Cocos Creator 项目已经成功在 WebView 上跑起来啦~ ? ?

12.2K13
  • Navigation系列——进阶篇

    Navigation系列——进阶篇 作者 大家好,叫小琪; 本人16年毕业于中南林业科技大学软件工程专业,毕业后在教育行业做开发,后来于19年10月加入37手游团队; 目前主要负责国内发行相关开发...androidx.constraintlayout.widget.ConstraintLayout> 其中fragment节点在上面已经介绍过了,这篇不再讲解,BottomNavigationView是谷歌一个实现底部导航组件...回到前面的NavHostFragmentonCreate方法中, @CallSuper @Override public void onCreate(@Nullable Bundle savedInstanceState...回到NavHostFragmentoncreate方法,继续看后面的代码 @CallSuper @Override public void onCreate(@Nullable Bundle savedInstanceState...我们知道replace方法每次都会重新创建fragment,所以使用Navigation创建底部导航页面,每次点击切换页面当前fragment都会重建。

    3.1K30

    Android Activity详解(一)

    逻辑层面的可见状态) I/SecondActivity--->: onResume(SecondActivity页面运行中) I/MainActivity--->: onStop(上一个页面进入停止状态) 3,返回到...为什么MainActivity跳转到另一个页面仅仅只进入了onStop()状态却没有被onDestroy(),在这我们需要说明一个回退栈问题。...图画不好看,见谅 当然,活动生命周期改变并不仅仅由跳转页面所决定,比如手机配置比较低,高优先级系统级应用需要内存就会把应用杀死,那毫无疑问 活动将由onResume——>onPause——>onStop...——>onDestroy 最后一个特殊情况再测试点击手机HOME键: 绝大多数教程内均写是点击HOME键任务进入后台,活动onStop()被保存,但是在真机测试时并不是这样 I/MainActivity...--->: onPause I/MainActivity--->: onStop I/MainActivity--->: onDestroy 设备是魅族MX4,5.1系统,个人猜想可能是版本不同所导致

    91610

    Android训练课程(Android Training) - 构建你第一个应用

    在你开始这个课程之前,确保你已经有了开发环境并设置好,你需要: 1.下载开发包(Android SDK) 2.为你Eclipse安装ADT插件(如果你使用Eclipse集成开发环境的话) 3....如何启动你应用依赖这两项:你是否拥有一个真实动力设备,和你是否使用Eclipse。...系统使用这个值去实现默认导航行为,比如在4.1(API等级16)或者更高 Up navigation。...你可以为旧版本提供相同导航行为,使用 Support Library 和 展示那样来添加元素。...如果你不使用Eclipse,你需要手动添加库到你项目中,跟随 setting up the Support Library 指南方式,这时再回到这里。

    2.2K00

    react-navigation,刷新你导航一、属性介绍二、案例

    当然只有在5.0以上才有效果 gesturesEnabled:是否支持滑动返回手势。...iOS默认支持,默认关闭 screen:对应界面名称,需要填入import之后页面 mode:定义跳转风格 card:使用iOS和默认风格。...pressColor:material涟漪效果颜色(版本需要大于5.0) pressOpacity:按压标签透明度变化(版本需要小于5.0) scrollEnabled:是否启用可滚动选项卡...端和iOS文件混合成为index.js文件。而文件App.js注册到了又注册到了index.js文件。故我们将需要用到代码编写在App.js文件中。...当然导航有自身返回按钮。以下代码是ChatScreen组件代码,当用户组件Text也会返回到上一个界面。

    19.7K90

    React Native 系列(八) -- 导航

    resetTo(route):取代最顶层路由并且回退过去。 popToTop():回到最上层视图。...NavigatorIOS使用步骤 初始化路由 注意:component,需要传入组件,自定义组件 NavigatorIOS上按钮图片,默认会被渲染成蓝色 NavigatorIOS上按钮,只能放一张图片...title:标题,如果设置了这个导航栏和标签栏title就会变成一样,不推荐使用 header:可以设置一些导航属性,如果隐藏顶部导航栏只要将这个属性设置为null headerTitle...:设置导航栏颜色 headerPressColorAndroid:独有的设置颜色纹理,需要版本大于5.0 gesturesEnabled:是否支持滑动返回手势,iOS默认支持...,默认关闭 screen:对应界面名称,需要填入import之后页面 mode:定义跳转风格 card:使用iOS和默认风格

    6K80

    APP生死之道

    这篇文章主要介绍APP在系统中是怎么被杀死,按照怎样一个策略去释放进程;同时介绍一些延长应用存活时间方案,虽然这个在现在系统上越来越难实现了,但是也是可以稍微了解下,主要也是通过这些hack...方案更好了解系统对进程管理。...进程是怎么被杀死? 我们知道,系统里所有APP都是被系统所托管,也就是说,系统负责APP进程创建和回收。...如果申请内存在需要使用时候还没有被释放掉,那么就会触发OOM Killer,直接干掉这个进程,这个可能不是用户想要得到结果。...updateOomLevels()是在AMSupdateConfiguration()方法里调用,也就是说在设备配置变化时候就会触发为什么是6个值?

    1.3K31

    Android入门教程 (一) Android简介和android studio安装

    我们手机,比如华为、VIVO、小米、三星等等都是使用系统。而我们学习Android开发,就是学习制作APP技能。至于Android底层实现,我们等到会用了再去研究。...Android我们,新建是空白APP应用,选择Empty Activity,即空项目 之后会让我们设置AS项目的详细信息,至于项目名、包名就随意了,我们又不写什么项目,只是练练手而已。...至于我们安装是29,这里为什么要设置为21,觉得有必要解释一下: 我们用AS写APP项目,是要在一个叫夜神第三方模拟器上跑,人家API才22,我们最小API必须要小于等于这个数,否则跑不起来...文本 layout_width/layout_height分别是该组件宽度高度 wrap_content代表包裹自身内部组件大小,即里面的东西有多大,就有多大 text是文本框文字,我们可以修改为自己喜欢文字...方法内两行代码即显示刚刚xml文件 运行自己项目 要想运行自己项目,要么使用自带模拟器,要么使用第三方模拟器。 一般来说,第三方模拟器性能会优于自带模拟器,我们以夜神为例。

    38520

    iOS 与 Android APP 设计差异

    左侧就是抽屉导航;右侧是标签栏 在Material Design中还有一个组件叫做底部导航。这个组件对于原生应用来说也非常重要。底部菜单项很容易点击和操作。...但是规范其实不建议同时使用底部导航和标签,因为它可能会在导航时引起混乱。 底部导航(Material Design) 在Apple的人机交互规范中,没有类似抽屉菜单标准导航控件。...正如你看到那样,这个组件非常像底部导航,只是在iOS中这种形式导航更加常用。...而对比规范,通常会把主要导航也放在汉堡菜单中。...两个平台差异一个例子是日期选择器。用户对iOS中常见老虎机形式日期选择器并不熟悉。

    3.4K10

    【云+社区年度征文】uni-app初体验

    第一次听到它,是在前几个月公司要开发一款 APP,而恰好公司并没有和 IOS 开发人员,也没有类似的客户端开发经验,而再招人所用时间成本和开发成本将大大超出预算。...这个时候朋友向我推荐了 uni-app 这款框架,使用这款框架开发轻应用,不仅可以打包成安和 IOS 应用,更支持市场主流各种小程序,可真是 一套代码,多处发布 啊。...01运行H5.png 3)应用 我们可以通过真机测试,也可以通过模拟器测试,我们需要在手机或模拟器上开启开发者调试,由于每种手机操作不同,在此不作过多介绍,需要时请根据手机品牌请教度娘。...3、组件代码 在 Vue 世界中,一切皆组件,一个组件有一套属于自己 JS、HTML、CSS 代码。 <!...如果喜欢文章就点赞,收藏,评论下 啊!第一次参数年度征文,也想冲一个奖,还需要大家多多支持,谢谢! 欢迎交流!若文章中有不恰当地方,请您一定要告诉

    2.6K3612

    超详细!监听微信小程序五种切后台情况

    点击返回键离开小程序 小程序前台运行时直接把微信切后台(手势或点击Home键) 小程序前台运行时直接锁屏 以下分别根据五种情况去进行监听并调用report()方法进行上报,是选用Taro框架制作小程序...Detail页面,并没有退出小程序,这时要在当前页面监听离开事件,使用react hooks写法,因此使用useEffect这个hook,在里面的返回函数里处理上报离开事件 // A.tsx const...(手势或点击Home键) iOS端下处理方法同情况一,但是在端下,点击Home健,此时小程序是在屏幕里缩小了,但是再次点击缩小界面返回小程序里,是根据url是否带指定参数去判断是调用接口/init...A页面后再回来A页面触发事件 无论是离开小程序再返回到小程序A页面,还是机子下点击home健把A页面失焦处理,亦或是A页面直接锁屏再次解锁屏幕回到A页面,回到A页面统一会触发useDidShow这个... ) } 复制代码 结语 以上是制作微信小程序时对监听五种情况切后台事件具体探讨,希望能对大家有帮助~如果能获得一个小小赞作为鼓励会十感激!!

    8.2K40

    Android Studio 知识储备 之 ✨-基础知识学习历程

    因为外部类不能直接访问用户界面 类中组件,要通过构造方法将组件传入使用;这样导致结果就是代码不够简洁!...2.Android回调事件处理机制详解: 在Android中基于回调事件处理机制使用场景有两个: 1)自定义view 常见View组件回调 android为GUI组件提供了一些事件处理回调方法...相关方法与属性: onTouch(View v, MotionEvent event):这里面的参数依次是触发触摸事件组件,触碰事件event 封装了触发事件详细信息,同样包括事件类型、触发时间等信息...该属性返回值:NAVIGATION_NONAV(无导航)、 NAVIGATION_DPAD(DPAD导航)NAVIGATION_TRACKBALL(轨迹球导航)、NAVIGATION_WHEEL(滚轮导航...总结 文章是在网上结合各种资料与自己学习Android过程中心得,仅供刚开始学童鞋参考,也是为了自己学习写。继续加油!

    64730

    搭建安开发环境(Android Studio)

    使用android studio搭建安开发环境十简单,当然jdk是必备,然后去http://developer.android.com下载android studio安装。...安装AVD 启动之前还要配置一个模拟器,简称AVD(android virtual device),单击刚才SDK manager旁边那个图标,那个就是AVD Manager。...了解程序 还记得之前我们在AndroidManifest.xml中注册主Activity吗?...系统四大组件分别是 Activity(活动,是程序门面),Service(服务,在后台默默运行),Broadcast Receiver(广播接收器,接收来自各处广播消息,包括别的应用程序),...至此,我们已经搭建完开发环境,并且基本了解了一个程序结构。 重要东西:Log Log,Log,Log重要东西说三遍,现在来看看如何在程序中添加Log。

    2K70

    如何开始对Android应用逆向分析?

    本文是关于如何开始Android逆向系列文章第一部。在文末提供了一个文档,你可以根据该文档说明部署同一样实验环境。...Android平台架构 Android应用程序及其组件 Android应用程序及其架构(PPT) 当前实验室环境如下: 主机系统为windows,其中安装了virtual box 和 genymotion...对于应用逆向,这里有一个非常好可供我们学习和练习apk - DIVA ( Damn insecure and vulnerable mobile Application )。...这是一个由Payatu安全分析师开发脆弱应用。...可以看到这里日志记录非常杂乱,因为它显示了许多不同日志记录数据(整个设备)。为了让我们看起来更加清晰,使用grep命令。但在此之前,我们需要首先获取该应用程序包进程ID。

    1.3K30
    领券