sách gpt4 ăn đã đi

Thông tin cơ bản về Android sử dụng tính năng kiểm soát Phân đoạn để chuyển đổi nhiều trang

In lại Tác giả: qq735679552 Thời gian cập nhật: 28-09-2022 22:32:09 25 4
mua khóa gpt4 giày nike

CFSDN nhấn mạnh vào giá trị tạo ra nguồn mở và chúng tôi cam kết xây dựng nền tảng chia sẻ tài nguyên để mọi nhân viên CNTT có thể tìm thấy thế giới tuyệt vời của bạn tại đây.

Bài viết trên blog CFSDN Khái niệm cơ bản về Android: Sử dụng Điều khiển phân đoạn để chuyển đổi nhiều trang được tác giả sưu tầm và biên soạn. Nếu bạn quan tâm đến bài viết này, hãy nhớ thích nó.

Hôm nay tôi sẽ giải thích cách điều khiển Fragment, chủ yếu là các thao tác như chuyển đổi Chế độ xem và thay thế trang. Ngoài ra còn có cách lấy đối tượng quản lý của Fragment và cách giao tiếp với Hoạt động. 1. Quản lý phân đoạn Để quản lý các phân đoạn trong một hoạt động, bạn cần sử dụng FragmentManager. Lấy phiên bản của nó bằng cách gọi getFragmentManager() của hoạt động.

•Bạn có thể thực hiện một số việc thông qua FragmentManager, bao gồm: Sử dụng findFragmentById() (để cung cấp đoạn giao diện người dùng trong bố cục hoạt động) hoặc findFragmentByTag() (đối với các đoạn có hoặc không có giao diện người dùng) để lấy đoạn tồn tại trong hoạt động. • Lấy đoạn từ ngăn xếp lui bằng cách sử dụng popBackStack() (mô phỏng người dùng nhấn lệnh BACK). •Sử dụng addOnBackStackChangeListener() để đăng ký một trình lắng nghe những thay đổi trong ngăn xếp lùi.

2. Xử lý các giao dịch Phân đoạn Một tính năng rất mạnh của việc sử dụng các phân đoạn trong hoạt động là chúng có thể được thêm, xóa, thay thế và thực hiện các hành động khác dựa trên tương tác của người dùng. Mỗi tập hợp thay đổi được gửi tới một hoạt động được gọi là giao dịch và có thể được xử lý bằng API trong FragmentTransaction. Chúng tôi cũng có thể lưu từng giao dịch vào một ngăn xếp lùi do hoạt động quản lý, cho phép người dùng điều hướng quay lại thông qua các thay đổi trong đoạn (tương tự như điều hướng quay lại hoạt động).

Lấy phiên bản FragmentTransaction từ FragmentManager:

Sao chép mã Mã này như sau:

FragmentManager FragmentManager =getFragmentManager();
FragmentTransaction FragmentTransaction = FragmentManager.beginTransaction();

Mỗi giao dịch là một tập hợp các thay đổi được thực hiện đồng thời. Bạn có thể đặt tất cả các thay đổi bạn muốn thực hiện trong một giao dịch nhất định bằng cách sử dụng các phương thức như add(), delete() và thay thế(). Sau đó, để áp dụng giao dịch vào hoạt động, phải gọi commit().

  。

Trước khi gọi commit(), bạn có thể muốn gọi addToBackStack() để thêm giao dịch vào ngăn xếp sau của giao dịch phân đoạn. Ngăn xếp lùi này được quản lý bởi hoạt động và cho phép người dùng quay lại trạng thái phân đoạn trước đó bằng cách nhấn nút QUAY LẠI.

Sao chép mã Mã này như sau:

//Tạo phiên bản đã sửa đổi
Đoạn newFragment = newExampleFragment();
Giao dịch FragmentTransaction =getFragmentManager().beginTransaction();
// Thay thế bất kỳ nội dung nào trong chế độ xem fragment_container bằng đoạn mã này,
// và thêm giao dịch vào backstack
giao dịch.replace(R.id.fragment_container,newFragment);
giao dịch.addToBackStack(null);
//Gửi thay đổi
giao dịch.cam kết();

Trên đây là cách thay thế đoạn này bằng đoạn khác và giữ trạng thái trước đó ở ngăn xếp lùi. Trong ví dụ này, newFragment thay thế đoạn được xác định bởi R.id.fragment_container trong vùng chứa bố cục hiện tại. Bằng cách gọi addToBackStack(), giao dịch thay thế sẽ được lưu vào ngăn xếp lùi, do đó người dùng có thể khôi phục giao dịch và quay lại đoạn trước đó bằng cách nhấn nút BACK.

  。

Nếu bạn thêm nhiều thay đổi vào một giao dịch (chẳng hạn như thêm() hoặc xóa()) và gọi addToBackStack() thì tất cả các thay đổi được áp dụng trước khi bạn gọi commit() sẽ được thêm vào ngăn xếp lui dưới dạng một giao dịch duy nhất và BACK nút sẽ cuộn chúng lại với nhau. Thứ tự thay đổi được thêm vào FragmentTransaction không quan trọng, ngoại trừ các trường hợp ngoại lệ sau

• Commit() phải được gọi cuối cùng • Nếu nhiều đoạn được thêm vào cùng một vùng chứa, thứ tự chúng được thêm vào sẽ xác định thứ tự chúng được hiển thị trong hệ thống phân cấp khung nhìn.

Khi thực hiện giao dịch loại bỏ một đoạn, nếu addToBackStack() không được gọi, đoạn đó sẽ bị hủy khi giao dịch được thực hiện và người dùng sẽ không thể điều hướng quay lại giao dịch đó. Vì lý do này, khi xóa một đoạn, nếu addToBackStack() được gọi, đoạn đó sẽ bị dừng và nếu người dùng điều hướng quay lại, nó sẽ được tiếp tục lại. Ngoài ra, đối với mỗi giao dịch phân đoạn, bạn có thể áp dụng hoạt ảnh giao dịch bằng cách gọi setTransition() trước khi thực hiện giao dịch.

Việc gọi commit() không thực hiện giao dịch ngay lập tức. Ngược lại, nó lên lịch giao dịch và khi đã sẵn sàng, nó sẽ chạy nó trên luồng giao diện người dùng của hoạt động (luồng chính). Tuy nhiên, nếu cần, bạn có thể gọi execPendingTransactions() từ chuỗi giao diện người dùng của mình để thực hiện ngay giao dịch được gửi bởi commit(). Nhưng điều này thường không cần thiết trừ khi giao dịch là nô lệ của một tác vụ trong một luồng khác. Cảnh báo: Bạn chỉ có thể sử dụng commit() để thực hiện một giao dịch trước khi hoạt động lưu trạng thái của nó (khi người dùng rời khỏi hoạt động). 3. Giao tiếp với Hoạt động Mặc dù Fragment được triển khai như một đối tượng độc lập với Hoạt động và có thể được sử dụng trong nhiều hoạt động). , nhưng một phiên bản phân đoạn nhất định được liên kết trực tiếp với hoạt động chứa nó. Các đoạn đặc biệt có thể truy cập phiên bản Hoạt động bằng cách sử dụng getActivity() và dễ dàng thực hiện các tác vụ như tìm chế độ xem trong bố cục hoạt động. Chẳng hạn như đoạn mã sau:

Sao chép mã Mã này như sau:

Xem danh sáchView =getActivity().findViewById(R.id.list);

Tương tự, một hoạt động có thể gọi các phương thức trong một đoạn bằng cách lấy tham chiếu đến đoạn đó từ FragmentManager, sử dụng findFragmentById() hoặc findFragmentByTag().

Sao chép mã Mã này như sau:

Đoạn mã ExampleFragment =(ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment);

4. Tóm lại, chúng ta cần nói về các ví dụ về Fragment ở phần cuối. Các quan chức Android đã cung cấp các ví dụ demo về các cách sử dụng Fragment khác nhau. Bản demo API trong SDK của chúng tôi chứa nhiều ví dụ khác nhau về việc sử dụng Fragment. có thể trực tiếp Chỉ cần xem chương trình API Demo, không cần phải tìm khắp nơi. Các chức năng khác nhau được tách ra và các lớp khác nhau được thực hiện. Bạn có thể xem mã cụ thể nếu cần.

Cuối cùng, bài viết này về những kiến ​​thức cơ bản về Android sử dụng Điều khiển phân đoạn để chuyển nhiều trang có tại đây. Nếu bạn muốn biết thêm về những kiến ​​thức cơ bản về Android sử dụng Điều khiển phân đoạn để chuyển nhiều trang, vui lòng tìm kiếm các bài viết CFSDN hoặc tiếp tục duyệt các Bài viết liên quan. mong bạn sẽ ủng hộ blog của mình trong tương lai nhé! .

25 4 0
qq735679552
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress