当前位置:操作系统 > 安卓/Android >>

Android新手入门教程(十四):初识Fragment の生命周期

就像activities一样,fragments也有它们自己的生命周期。理解fragments的生命周期,可以使你在它们被销毁的时候保存它们的实例,这样在它们重新被创建的时候,就能恢复它们之前的状态。下面的例子测试了fragments的不同状态。

    1.创建一个Fragment的子类:Fragment1.java。

[java] package net.horsttnann.Fragments; 
 
import android.app.Activity; 
import android.app.Fragment; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
 
public class Fragment1 extends Fragment { 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
            Bundle savedInstanceState) { 
 
        Log.d("Fragment 1", "onCreateView"); 
 
        // ---Inflate the layout for this fragment---  
        return inflater.inflate(R.layout.fragment1, container, false); 
    } 
 
    @Override 
    public void onAttach(Activity activity) { 
        super.onAttach(activity); 
        Log.d("Fragment 1", "onAttach"); 
    } 
 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        Log.d("Fragment 1", "onCreate"); 
    } 
 
    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
        super.onActivityCreated(savedInstanceState); 
        Log.d("Fragment 1", "onActivityCreated"); 
    } 
 
    @Override 
    public void onStart() { 
        super.onStart(); 
        Log.d("Fragment 1", "onStart"); 
    } 
 
    @Override 
    public void onResume() { 
        super.onResume(); 
        Log.d("Fragment 1", "onResume"); 
    } 
 
    @Override 
    public void onPause() { 
        super.onPause(); 
        Log.d("Fragment 1", "onPause"); 
    } 
 
    @Override 
    public void onStop() { 
        super.onStop(); 
        Log.d("Fragment 1", "onStop"); 
    } 
 
    @Override 
    public void onDestroyView() { 
        super.onDestroyView(); 
        Log.d("Fragment 1", "onDestroyView"); 
    } 
 
    @Override 
    public void onDestroy() { 
        super.onDestroy(); 
        Log.d("Fragment 1", "onDestroy"); 
    } 
 
    @Override 
    public void onDetach() { 
        super.onDetach(); 
        Log.d("Fragment 1", "onDetach"); 
    } 

package net.horsttnann.Fragments;

import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

public class Fragment1 extends Fragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        Log.d("Fragment 1", "onCreateView");

        // ---Inflate the layout for this fragment---
        return inflater.inflate(R.layout.fragment1, container, false);
    }

    @Override
    public void onAttach(Activity activity) {
        super.onAttach(activity);
        Log.d("Fragment 1", "onAttach");
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d("Fragment 1", "onCreate");
    }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        Log.d("Fragment 1", "onActivityCreated");
    }

    @Override
    public void onStart() {
        super.onStart();
        Log.d("Fragment 1", "onStart");
    }

    @Override
    public void onResume() {
        super.onResume();
        Log.d("Fragment 1", "onResume");
    }

    @Override
    public void onPause() {
        super.onPause();
        Log.d("Fragment 1", "onPause");
    }

    @Override
    public void onStop() {
        super.onStop();
        Log.d("Fragment 1", "onStop");
    }

    @Override
    public void onDestroyView() {
        super.onDestroyView();
        Log.d("Fragment 1",

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,