Tôi gặp sự cố cho Điều hướng trong ứng dụng của mình. Tôi sử dụng xamarin.forms làm thế nào có thể làm sạch ngăn xếp chuyển hướng của tôi. Không sử dụng Pop và push. Tôi có thể xem ngăn xếp điều hướng đầy đủ của mình không?Làm cách nào để xóa ngăn Điều hướng?
Trả lời
Trong phiên bản mới nhất của Xamarin.Forms bạn có thể nhìn thấy đống điều hướng của bạn sử dụng
Navigation.NavigationStack
do đó bạn có thể sử dụng một
var existingPages = Navigation.NavigationStack.ToList();
foreach(var page in existingPages)
{
Navigation.RemovePage(page);
}
Mã này sẽ phải đi vào mã của bạn đằng sau của một Trang điều hướng hoặc thứ gì đó thực hiện INavigation.
Thông tin thêm Xamarin.Forms.INavigation Members
Đây là một chức năng tôi đã thực hiện để trống ngăn xếp và điều hướng đến một trang nào đó. (Các trường hợp sử dụng là ứng dụng đã được de-kích hoạt quá trình sử dụng và tôi cần phải kick người dùng ra)
public async Task PopAllTo(ViewModel vm)
{
if (vm == null) return;
Page page = PreparePage(vm); //replace 'page' with the page you want to reset to
if (page == null) return;
_navigation.InsertPageBefore(page, _navigation.NavigationStack.First());
await _navigation.PopToRootAsync();
}
Hoạt động hoàn hảo –
Bạn có thể thử này ...
public void ResetNavigationStack()
{
if (_navigation != null && _navigation.NavigationStack.Count() > 0)
{
var existingPages = _navigation.NavigationStack.ToList();
foreach (var page in existingPages)
{
_navigation.RemovePage(page);
}
}
}
và BOOOM !!! mà nav stack được xóa brotha!
Hoặc nếu bạn muốn thiết lập lại ngăn xếp modal
public async Task<Page> PopAllModals()
{
Page root = null;
if (_navigation.ModalStack.Count() == 0)
return null;
for (var i = 0; i <= _navigation.ModalStack.Count(); i++)
{
root = await _navigation.PopModalAsync(false);
}
return root;
}
Và BOOOM! những mô hình đó đã biến mất!
- 1. Cách xóa biểu tượng ngăn Điều hướng
- 2. Làm cách nào để tạo ngăn xếp điều hướng chung?
- 3. Làm cách nào để xóa chế độ xem khỏi bộ điều khiển điều hướng
- 4. Xóa lề trái khỏi biểu tượng ngăn điều hướng android
- 5. Làm cách nào để ngăn Chrome chuyển hướng sang HTTPS?
- 6. Ngăn điều hướng Android
- 7. Làm cách nào để loại bỏ Ngăn Điều hướng để sử dụng nút Back-home-icon?
- 8. Ngăn điều hướng - tắt swipe
- 9. Làm thế nào để đặt văn bản để xem từ ngăn kéo điều hướng trong ngăn điều hướng mà không làm tăng chế độ xem
- 10. Cập nhật danh sách ngăn điều hướng ngăn dẫn hướng
- 11. Làm cách nào để đưa màu cho các mục menu cho ngăn Điều hướng?
- 12. Làm cách nào để liên kết ngăn điều hướng với nút kéo ra ngoài?
- 13. Làm cách nào để mở ngăn điều hướng trên nút bấm trong đoạn chính?
- 14. Làm cách nào để ngăn không cho Backspace điều hướng trở lại trong javascript?
- 15. Làm cách nào để ngăn chặn IIS7 xóa cookie?
- 16. Làm cách nào để xóa bộ điều hướng trong bảng phân cảnh?
- 17. Làm cách nào để xóa lịch sử điều hướng trong Silverlight/Windows Phone 7?
- 18. Làm cách nào để xóa hoặc thay đổi lịch sử điều hướng của Jquery Mobile?
- 19. Làm cách nào để xóa một trang khỏi lịch sử điều hướng?
- 20. Nút Chuyển đổi trong Ngăn Điều hướng
- 21. Android Studio 1.4 Ngăn điều hướng
- 22. Xem bản xem trước ngăn điều hướng
- 23. Android: Điều hướng Ngăn chặn bóng dọc
- 24. Làm cách nào để xóa các mục menu của ngăn xếp ngăn xếp?
- 25. jqGrid ngăn điều hướng máy nhắn tin?
- 26. Cách thêm nhóm vào ngăn điều hướng theo chương trình
- 27. Làm cách nào để tạo điều hướng trong Middleman?
- 28. Làm cách nào để bạn tạo điều hướng trang web?
- 29. Làm thế nào để vượt qua mục đệm này trong ngăn điều hướng?
- 30. Chuyển trong ngăn điều hướng Android
Tuyệt vời, tôi sử dụng phiên bản cũ và không có NavigationStack – Ibrahim
@ibrahim bạn có thể nâng cấp phiên bản của mình qua nuget. đi đến tài liệu tham khảo trong dự án của bạn và nhấp chuột phải và nhấp vào quản lý gói nuget. Sau đó chọn Cập nhật và cài đặt bản cập nhật Xamarin.Forms – user1
Có, tôi biết, tôi vừa viết lý do cho câu hỏi. Bởi vì với phiên bản mới của câu hỏi này là ngu ngốc. cảm ơn bạn – Ibrahim