Android问题集(一)——从fragment跳转到另一个Activity


解决方法:

Intent intent = new Intent(getActivity(), NextActivity.class);
startActivity(intent);

而Activity间的跳转则为:

Intent intent = new Intent(NowActivity.class, NextActivity.class);
startActivity(intent);

### Android Activity 跳转 Fragment 生命周期详解 #### ActivityFragment 的生命周期交互 当从 `Activity` 切换至 `Fragment` 时,两者之间的生命周期会紧密协作并相互影响。具体来说: - **启动过程** 在首次进入 `MainActivity` 并加载第一个 `Fragment` 时,`Activity` 首先经历其自身的初始化阶段,即依次触发 `onCreate()` -> `onStart()` -> `onResume()` 方法[^1]。 紧接着,对于新加入的 `Fragment` 实例而言,则按照顺序执行以下系列方法来完成自己的创建流程:`onAttach()` -> `onCreate()` -> `onCreateView()` -> `onViewStateRestored()` -> `onActivityCreated()` -> `onStart()` -> `onResume()`[^2]。 此时整个界面处于前台可见状态,并且用户可以与之互动。 ```java // MainActivity.java 示例代码片段 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (savedInstanceState == null){ getSupportFragmentManager().beginTransaction() .add(R.id.fragment_container, new MyFragment()) .commit(); } } ``` - **离开当前页面** 旦发生由某个事件(比如点击按钮)引发向一个 `Activity` 或者不同 `Fragment` 进行导航的动作,原 `Activity` 将开始走销毁路径的部分操作——暂停(`onPause`)、停止(`onStop`)直至可能最终被回收(`onDestroy`)[^4];与此同时,任何已附加给该 `Activity` 下面的 `Fragment(s)` 同样也会相应地收到通知去处理各自的状态保存工作并通过调用诸如 `onSaveInstanceState()` 来准备即将发生的变动[^3]。 如果只是简单替换现有容器内的 `Fragment` ,则旧有的那个会被置入背景不可见模式 (`onPause`, `onStop`) 或完全摧毁 (`onDestroyView`, `onDestroy`),而新的将会重复之前提到过的构建步骤直到显示出来为止。 ```java // 替换Fragment示例代码 getSupportFragmentManager().beginTransaction() .replace(R.id.fragment_container, anotherFragment) .addToBackStack(null)//可选参数用于管理返回堆栈 .commit(); ``` - **返回前页面** 按下 Back 键回到之前的 `Activity` 或 `Fragment` 上下文中,先前被隐藏起来的对象将重新激活它们的生命历程—恢复(`onRestart`)、重启(`onStart`)以及继续运行(`onResume`), 对于那些曾经短暂消失不见但仍保留着实例数据结构体的组件来讲更是如此。 而对于刚被移除掉的那个部分,则依据具体情况决定是否要彻底释放资源或是仅仅调整为后台等待状态以便将来快速重现。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值