Android Fragment基礎

來源:互聯網
上載者:User

標籤:

同一個app內的介面切換 用Fragment比較合適,因為Activity比較重量級

Fragment 輕量級,切換靈活

-------------------------------------------

1. 建立和使用 Fragment

2. Fragment 的生命週期 及相關的實際應用

3. 建立一個帶側邊欄的 Activity 以及使用

4. 建立一個 Tabbed Activity 並使用

5. Fragment的使用和狀態儲存

6. Fragment的橫豎屏切換

-------------------------------------------

工程代碼:

-------------------------------------------

1. 建立和使用 Fragment

     * 建立一個 帶Fragment的Activity,將Fragment重構到一個新檔案中PlaceholderFragment.java

     * 建立另一個Fragment,AnotherFragment.java

     * 使用按鈕實現兩個Fragment的切換

1.1 在layout fragment_main中添加一個按鈕btnOpenAnohterFragment, 用於開啟另一個Fragment;

    replace, add, hide, show

public class PlaceholderFragment extends Fragment {    public PlaceholderFragment() {    }    @Override    public View onCreateView(LayoutInflater inflater, ViewGroup container,            Bundle savedInstanceState) {        View rootView = inflater.inflate(R.layout.fragment_main, container,                false);        rootView.findViewById(R.id.btnOpenAnohterFragment).setOnClickListener(                new OnClickListener() {                    @Override                    public void onClick(View v) {                        // TODO Auto-generated method stub                        getFragmentManager().beginTransaction()                                .addToBackStack(null) //支援返回鍵,否則點返回直接退出app                                .replace(R.id.container, new AnotherFragment())                                .commit();                    }                });        return rootView;    }}

1.2 在AnotherFragment 添加按鈕btnBack,用於返回上一個Fragment

public class AnotherFragment extends Fragment {    @Override    public View onCreateView(LayoutInflater inflater, ViewGroup container,            Bundle savedInstanceState) {        // TODO Auto-generated method stub        View root = inflater.inflate(R.layout.fragment_another, container, false);                root.findViewById(R.id.btnBack).setOnClickListener(new OnClickListener() {            @Override            public void onClick(View v) {                // TODO Auto-generated method stub                getFragmentManager().popBackStack();            }        });        return root; //super.onCreateView(inflater, container, savedInstanceState);    }}

 

2. Fragment 的生命週期 及相關的實際應用

比Activity的生命週期多很多,

onCreate,onCreateView,onPause是最常用的

 

3. 建立一個帶側邊欄的 Activity 以及使用

    建立 Activity: Navigation Drawer Activity

    * 預設效果: 是在onCreateView中添加了一個ListView,來顯示資料

   

    * 自訂側邊欄

 

 

 

4. 建立一個 Tabbed Activity 並使用

5. Fragment的使用和狀態儲存

6. Fragment的橫豎屏切換

-------------------------------------------

 

-------------------------------------------

Android Fragment基礎

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.