Fragment trong android là gì

     

Hello everyone, bản thân sẽ chia sẻ với các bạn cách thực hiện fragment vào android. Nó là một trong những thành phần quan lại trọng. Nó khá giống activity. Từ bây giờ mình đi vào phần 1 static fragment, phần 2 dynamics fragment bản thân sẽ share vào bài viết lần sau. Giờ họ cùng tò mò nhé.

1. Một vài khái niệm cơ bản

Trong các ứng dụng android, tại 1 thời điểm, chỉ gồm một Activity được hiển thị nhất trên màn hình. Bọn họ muốn chia màn hình hiển thị ra phần nhiều để dễ sử dụng thì fragment thỏa mãn nhu cầu điều đóFragment là 1 trong thành phần apk độc lập, được áp dụng bởi một activity, y như một sub-activity. Fragment có vòng đời với UI riêng. Các Fragment thường sẽ có một file java đi kèm theo với file giao diện xml.


Bạn đang xem: Fragment trong android là gì


Xem thêm: Litado Là Gì

Những fragment không có file giao diện xml hay được điện thoại tư vấn là headless fragments.Fragment thực hiện method getActivity() để đưa ra Activity bốFragment được quan niệm trong file xml của activity (static definition) hoặc có thể sửa thay đổi fragment khi đang chạy (dynamic definition)

2. Fragment life cycle - vòng đời của 1 fragment

*
onAttach(): hàm này triển khai tạo tham chiếu từ 1 fragment mang đến activity đã khởi sinh sản nó, và thực hiện một số bước trong quy trình khởi tạo

onCreate(): thực hiện khởi chế tạo fragment

onCreateView(): thực hiện tạo giao diện(view), trả về view là bối cảnh file xml tương xứng fragment. Ko nên tác động với activity vào hàm này cũng chính vì activity chưa được khởi chế tác đầy đủ. Không cần tiến hành hàm này với các fragment không tồn tại header

onActivityCreated(): thực hiện xong xuôi nốt câu hỏi khởi tạo activity với fragment. Trong bước này bạn cũng có thể gọi findViewById()

onStart(): tiến hành việc hiển thị fragment lên màn hình

onResume(): fragment bao gồm thức chuyển động hoàn toàn

onPause(): fragment bị tạm ngưng hoạt động, nó vẫn hoàn toàn có thể được nhìn thấy

onStop(): fragment bị ẩn

onDestroyView(): giao diện(view) của fragment bị hủy. Nếu như nó được hotline quay lại, nó đang quay trở lại tiến hành hàm onCreateView()

onDestroy(): bị hủy

onDetach(): bị hủy trả toàn

3. Static FragmentStatic Fragment là kiểu dáng fragment được khai báo (định nghĩa) thẳng trong tệp tin activity_main.xmlVí dụ ta bao gồm 2 static fragment là Fragment1.java(fragment1.xml)Fragment2.java(fragment2.xml)Trong tệp tin activity_main.xml khai báo tĩnh:

Chú ý: bắt buộc phải có nằm trong tính android:id. Nếu như không sẽ tạo lỗi.Hai class Fragment1.java cùng Fragment2.java đề nghị extends FragmentVà cần ghi đè cách tiến hành onCreateView():

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) super.onCreateView(inflater, container, savedInstanceState); View view = inflater.inflate(R.layout.fragment1, container, false); return view;Example:

MainActivity.java

package com.example.tuantv6.fragmentdemo;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity
Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); Fragment1

package com.example.tuantv6.fragmentdemo;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Fragment1 extends Fragment


Xem thêm: Bánh Churros Là Gì ? Món Ăn Vặt Tây Ban Nha Nổi Tiếng Thế Giới

Nullable Bundle savedInstanceState) super.onCreateView(inflater, container, savedInstanceState); View view = inflater.inflate(R.layout.fragment1, container, false); return view; Fragment2

package com.example.tuantv6.fragmentdemo;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Fragment2 extends Fragment
Nullable Bundle savedInstanceState) super.onCreateView(inflater, container, savedInstanceState); View view = inflater.inflate(R.layout.fragment2, container, false); return view; fragment1.xml

fragment2.xml

mainactivity.xml

Kết quả

*

Trên đấy là hướng dẫn cơ phiên bản về thực hiện static fragment, chúng ta cùng chờ đợi phần 2 về dynamic fragment trong bài viết tiếp theo của chính bản thân mình nhé.

*
Refer link: http://www.vogella.com/tutorials/AndroidFragments/article.html