再回到界面
05-07 05:55:49.441: I/Log(1990): onRestart 05-07 05:55:49.441: I/Log(1990): onStart 05-07 05:55:49.441: I/Log(1990): onStart_Fragment 05-07 05:55:49.441: I/Log(1990): onResume 05-07 05:55:49.441: I/Log(1990): onResume_Fragment
销毁activity
05-07 05:59:02.293: I/Log(1990): onPause_Fragment 05-07 05:59:02.293: I/Log(1990): onPause 05-07 05:59:02.757: I/Log(1990): onStop_Fragment 05-07 05:59:02.757: I/Log(1990): onStop 05-07 05:59:02.757: I/Log(1990): onDestroyView_Fragment 05-07 05:59:02.757: I/Log(1990): onDestroy_Fragment 05-07 05:59:02.757: I/Log(1990): onDetach_Fragment 05-07 05:59:02.757: I/Log(1990): onDestroy
可以看出 当现实fragment的时候都先执行activity方法,当销毁的时候都是现执行 fragment的方法,这样更好理解fragment是嵌套在activity中
下面一个综合性的例子测试了fragments的不同状态:
1.创建一个Fragment的子类:Fragment1.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");
}
}










