編輯:Android開發教程
就像activities一樣,fragments也有它們自己的生命周期。理解fragments的生命周期,可以使你在它們 被銷毀的時候保存它們的實例,這樣在它們重新被創建的時候,就能恢復它們之前的狀態。下面的例子測試 了fragments的不同狀態。
1. 創建一個Fragment的子類:Fragment1.java。
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"); } }
2. 按Ctrl+F11,將模擬器轉換成“橫屏模式”。
3. 按F11調試。
4. 當應用被加載的 時候,LogCat窗口中有如下顯示。
03-27 12:23:32.255: D/Fragment 1(704): onAttach 03-27 12:23:32.255: D/Fragment 1(704): onCreate 03-27 12:23:32.255: D/Fragment 1(704): onCreateView 03-27 12:23:32.274: D/Fragment 1(704): onActivityCreated 03-27 12:23:32.274: D/Fragment 1(704): onStart 03-27 12:23:32.286: D/Fragment 1(704): onResume
5. 按Home鍵,LogCat窗口中有如下顯示。
03-27 12:25:23.174: D/Fragment 1(704): onPause 03-27 12:25:25.174: D/Fragment 1(704): onStop
6.按Home鍵不放,重新進入應用,LogCat窗口 中有如下顯示。
03-27 12:26:21.505: D/Fragment 1(704): onStart 03-27 12:26:21.505: D/Fragment 1(704): onResume
7. 按返回鍵,LogCat窗口中有如下顯示。
03-27 12:27:54.384: D/Fragment 1(704): onPause 03-27 12:27:55.324: D/Fragment 1(704): onStop 03-27 12:27:55.324: D/Fragment 1(704): onDestroyView 03-27 12:27:55.324: D/Fragment 1(704): onDestroy 03-27 12:27:55.324: D/Fragment 1(704): onDetach
不得不承認,這是個高效率的時代!從刷機精靈微博了解到,上周五,Google發布了Android4.4的源碼,這不,剛過了一天,Nexus 4機型的4.4 ROM就已經率先
1.1 Gralloc與Framebuffer相信做過Linux開發的人對framebuffer不會太陌生,它是內核系統提供的一個與硬件無關的顯示抽象層。之所以稱之為bu
上下文相關菜單(Context Menu)類同PC上按鼠標右鍵顯示的菜單,在Android平台上是長按來激活Context Menu,Context Menu一般用來顯示
本例介紹創建一個測試項目的一般步驟和編寫測試用例的基本方法。為簡單起見,創建一個HelloWorld應用,帶有一 個Greeting類,其定義如下:public clas