onAttach(Context context): 当Fragment对象被创建并与其Activity宿主关联时调用。在这个阶段,Fragment可以访问Activity宿主的所有方法。
onCreate(Bundle savedInstanceState): 第一次创建Fragment时调用,或者当Fragment从配置更改(如屏幕旋转)恢复时调用。在这个方法中,可以实例化Fragment的成员变量,但是不能访问Activity宿主因为此时Activity还没有创建完成。
onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState): 第一次创建Fragment的视图时调用,或者当Fragment从配置更改恢复时调用。在这个方法中,可以调用inflate来创建Fragment的视图层次结构。如果Fragment没有视图或者视图已经被销毁,它将被重新创建。
onActivityCreated(Bundle savedInstanceState): 在Activity的onCreate方法之后,且在Activity的视图被创建之后调用。这个方法可以让Fragment访问Activity的视图和其他组件。
onStart(): 当Fragment对用户可见时调用。在这个阶段,Fragment的视图已经准备好,并且可以与其他Fragment或Activity进行交互。
onResume(): 当Fragment处于活动状态,准备与用户进行交互时调用。这是Fragment的生命周期中最活跃的状态。
onPause(): 当Fragment暂时不可见时调用,例如,当新的Fragment被推送到栈顶时。在这个阶段,可以保存需要暂停的数据。
onStop(): 当Fragment完全不可见时调用。在这个阶段,Fragment不再接收用户交互。
onDestroyView(): 当Fragment的视图被销毁时调用。在这个方法中,可以进行一些清理工作,比如取消视图的监听器。
onDestroy(): 当Fragment对象被销毁时调用。在这个阶段,可以进行最终的清理工作,比如释放资源。
onDetach(): 当Fragment与其Activity宿主分离时调用。在这个阶段,Fragment将失去对Activity的引用。
// private void switchToContentDetails() {
// if (passwordBinding != null) {
// passwordBinding = null;
// }
// binding = FragmentGearPositionSpeedBinding.inflate(getLayoutInflater());
// ViewGroup parent = (ViewGroup) getView();
// if (parent != null) {
// parent.removeAllViews();
// parent.addView(binding.getRoot());
// }
// }
@Override
public void setMenuVisibility(boolean menuVisible) {
super.setMenuVisibility(menuVisible);
// 可见:true 不可见:false
if (!menuVisible) {
if (binding != null) {
binding.scrollView.setVisibility(View.GONE);
binding.layoutPass.passll.setVisibility(View.VISIBLE);
binding.layoutPass.passLayout.removeAllPwd();
}
}
}