LƯU Ý: Đây là một đoạn trích từ Android Training lớp Implementing Effective Navigation.
Để thực hiện điều này (trong Android 3.0 hoặc cao hơn), bạn có thể sử dụng một ViewPager kết hợp với API ActionBar tab.
Khi quan sát trang hiện tại đang thay đổi, hãy chọn tab tương ứng. Bạn có thể thiết lập hành vi này sử dụng một ViewPager.OnPageChangeListener trong phương pháp của hoạt động của bạn onCreate()
:
@Override
public void onCreate(Bundle savedInstanceState) {
...
mViewPager.setOnPageChangeListener(
new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
// When swiping between pages, select the
// corresponding tab.
getActionBar().setSelectedNavigationItem(position);
}
});
...
}
Và khi lựa chọn một tab, chuyển sang trang tương ứng trong ViewPager. Để làm điều này, thêm một ActionBar.TabListener đến tab của bạn khi tạo nó bằng cách sử dụng phương pháp newTab()
:
actionBar.newTab()
...
.setTabListener(new ActionBar.TabListener() {
public void onTabSelected(ActionBar.Tab tab,
FragmentTransaction ft) {
// When the tab is selected, switch to the
// corresponding page in the ViewPager.
mViewPager.setCurrentItem(tab.getPosition());
}
...
}));
Nguồn
2012-04-13 01:58:04
Hi Roman, Vui lòng làm ví dụ triển khai bộ điều hợp kiến để triển khai vuốt bố cục nhiều ngăn chứa nhiều đoạn được tạo động/có thể thay thế. Thách thức: - Trình quản lý phân đoạn sử dụng ID tài nguyên để thêm Phân đoạn; ID phải là duy nhất trên các trang (bạn không thể chỉ định cá thể ViewGroup làm vùng chứa) - Chế độ xem vùng chứa phải tồn tại trước khi FragmentManager cố khôi phục các đoạn - Các phiên bản được giữ lại và lỗi thay đổi hướng # 1: NullPointerException xung quanh khi FragmentManager cố gắng lưu Trạng thái phân mảnh; # 2: NullPointerException xung quanh LoaderInfo.onLoadComplete – user289463
Bạn nên đặt câu hỏi này như một câu hỏi mới. –
Những điều kỳ lạ xảy ra nếu bạn thêm biểu tượng menu vào thanh tác vụ và sử dụng ViewPager theo cách đó ... – Maxim