Activity vs Fragment vs FragmentActivity, what is difference point?

Activity như đã biết một trong những thành phần chính của Android, Activity chính là xương sống, giao diện người dùng được xây dựng trên nền của Activity. – Giới thiệu Fragment: Fragment được đưa vào Android từ API 11, là một phần của activity, đóng góp vào xây dựng giao diện cho Activity. Fragment cũng được coi là sub-activity. Fragment life-cycle phụ thuộc vào Activity chứa nó, có nghĩa là Activity destroy thì fragment cũng không còn. – Giới thiệu về FragmentActivity: Thực chất là Activity Plus, bạn có thể gọi mọi function của Activity và có khả năng sử dụng Fragment, hữu dụng trong nhiều trường hợp. Bạn sử dụng FragmentActivity để dễ dàng xây dựng tab và swap. Chú ý: Nếu bạn sử dụng Activity thì phải đi với android.app.Fragment, còn nếu sử dụng FragmentActivity thì phải đi với android.support.v4.app.Fragment. Nếu làm ngược lại thì sẽ xảy ra exception. Bonus thêm Fragment Fragment Manager xử lý “Back” không giống Activity. Theo Activity thì trở về Activity trước đó, còn trong Fragment là trở về trạng thái trước đó. – fragmentTransaction.add(int containerViewId, Fragment fragment, String tag): add fragment mới vào container. – fragmentTransaction.remove( Fragment fragment): remove old fragment ra khỏi container. – fragmentTransaction.replace(int containerViewId, Fragment fragment, String tag): có nghĩa là nó gọi remove fragment cũ-> sau đó sẽ gọi add mới. Nó gộp quá trình remove và add. – fragmentTransaction.addToBackStack(str): Có nghĩa là quá trình transaction được lưu vào stack, option là name hoặc null. Khi replace nhiều fragment vào một stack thì nó sẽ xử lí nút Back. Function này thường sử dụng với Replace – fragmentManager.popBackStack(TAG, FragmentManager.POP_BACK_STACK_INCLUSIVE): pop fragment có TAG, ngoài ra có xóa stack như sau transaction.popBackStack(null,FragmentManager.POP_BACK_STACK_INCLUSIVE);

getBackStackEntryAt(int index): get at index

getBackStackEntryCount(): get count in the back stack

Leave a comment