Tôi đang cố gắng tạo hiệu ứng cho việc xóa nội dung đầu trang/chân trang của bảng nhìn bằng hoạt ảnh. Tôi tin rằng tôi có thể gọi hoặc removeFromSuperview trên nội dung tiêu đề chính nó, hoặc chỉ cần chỉ định tiêu đề để nil, nhưng tôi không biết làm thế nào để animate này. Một khối hoạt hình đơn giản không làm bất cứ điều gì - làm thế nào để làm mờ một cái nhìn (một nhãn trong trường hợp này) vào/ra?Làm nổi bật đầu trang và chân trang của UITableView
Trả lời
Tôi đã viết một ví dụ về cách xóa hoàn toàn chế độ xem tiêu đề bằng cách sử dụng các khối hoạt ảnh.
[UIView beginAnimations:nil context:NULL];
[self.tableView setTableHeaderView:nil];
[UIView commitAnimations];
Điều này tất nhiên giả định rằng hoạt ảnh này đang được gọi bên trong lớp UITableViewController của bạn.
Đơn giản chỉ cần xóa chế độ xem tiêu đề khỏi trình giám sát không hoạt động vì chế độ xem bảng không biết tự thay đổi kích thước để lấp đầy thứ được sử dụng làm chế độ xem tiêu đề. Cài đặt của chế độ xem tiêu đề làm cho chế độ xem bảng tự làm mới động.
Nếu cách này không hiệu quả, hãy kiểm tra (các) bài tập của bạn trong cá thể tableView.
tôi thấy hai tùy chọn sau để cả hai công việc ok:
tùy chọn 1
[UIView animateWithDuration:0.15
delay:0.0
options: UIViewAnimationCurveEaseOut
animations:^{deleteLabel.alpha = 0;}
completion:nil];
tùy chọn 2
[UIView beginAnimations:nil context:nil];
deleteLabel.alpha = 0.0;
[UIView commitAnimations];
Chỉ là một lưu ý nhỏ cho bất kỳ ai theo dõi điều này, tùy chọn ở trên phải là UIViewAnimationOptionCurveEaseOut –
Đây là công việc một cách hoàn hảo "nguyên trạng", và tôi không quan tâm đến hoạt ảnh
[myPrettyViewControllerInstance letUpdatePrettyViewNow];
[[self tableView] beginUpdates];
[[self tableView] setTableHeaderView:[myPrettyViewControllerInstance view]];
[[self tableView] endUpdates];
nhưng nếu chúng ta không cần nó hơn
[[self tableView] setTableHeaderView:nil];
thats tất cả của chúng ta cần, thực sự (nếu nó không fadeOut - kiểm tra các điều kiện của
[[self tableView] setTableHeaderView:nil];
và chúng tôi không cần
[UIView beginAnimations:nil context:NULL];
[[self tableView] setTableHeaderView:nil];
[UIView commitAnimations];
nop
[[self tableView] beginUpdates];
[[self tableView] setTableHeaderView:nil];
[[self tableView] endUpdates];
nop
[[self tableView] setTableHeaderView:nil];
[[self tableView] reloadData];
noo ..
Điều này làm việc cho các ô, nhưng không, có vẻ như đối với các tiêu đề bảng. – Gujamin
Xin lỗi, nhưng nó hoạt động cho các tiêu đề (không biết về các ô). Tôi sử dụng điều này trong dự án gần đây của tôi và tất cả đều hoạt động. Bạn có thể cung cấp mã nguồn không? – WINSergey
Nó không hoạt động để chèn chế độ xem tiêu đề bảng. Sử dụng bảng phân cảnh và bố cục tự động. Chế độ xem vừa xuất hiện. Nó không hoạt hình. – Gujamin
tôi đã kết thúc với giải pháp đơn giản sau đây. Nó làm động việc loại bỏ tiêu đề.
[self.tableView beginUpdates];
self.tableView.tableHeaderView = nil;
[self.tableView endUpdates];
Tôi nhận thấy điều này được đề cập trong phản hồi của WINSergey, nhưng tôi thấy giải thích của anh ấy hơi khó hiểu.
tôi đã cùng một vấn đề, tôi muốn kiểm soát cách header được lấy ra, đây là phương pháp của tôi:
Tại viewDidLoad:
UIView *transView = [[UIView alloc] initWithFrame:CGRectMake(0.f, 0.f, 320.f, 200.f)];
transView.backgroundColor = [UIColor clearColor];
self.headerView = transView;
[transView release];
[self.tableView setTableHeaderView:self.headerView];
Sau đó, khi bạn cần phải loại bỏ tiêu đề:
[UIView animateWithDuration:.3f
delay:.0f
options: UIViewAnimationOptionBeginFromCurrentState
animations:^{
self.headerView.frame = CGRectMake(0.0f, 0.0f, 320.f, 0.0f);
}
completion:^(BOOL finished) {
[tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForItem:0 inSection:section] atScrollPosition:UITableViewScrollPositionTop animated:YES];
}];
Tôi phải đặt 2 hoạt ảnh để hoạt động.
[UIView animateWithDuration:2.0f animations:^{
mylbl.alpha = 0.1 ;
} completion:^(BOOL finished) {
[UIView animateWithDuration:2.0f animations:^{
mylbl.alpha = 1.0 ;
}];
}];
- 1. listview với đầu trang và chân trang
- 2. Đầu trang và Chân trang XSL FO
- 3. Android ListView với đầu trang và chân trang cố định
- 4. Thay đổi đầu trang/chân trang của phần UITableView KHI RUNNING ứng dụng?
- 5. Đầu trang và chân trang tùy chỉnh trong trang html
- 6. Đặt chân trang cơ bản thành UITableView
- 7. Tạo đầu trang/chân trang PHP
- 8. mPDF vô hiệu hóa số trang, đầu trang và chân trang trên trang đầu tiên
- 9. đầu trang và chân trang trong Prawn PDF
- 10. Nội dung với 100% giữa đầu trang và chân trang
- 11. Chân trang và đầu trang nhiều dòng (đoạn) trong reportlab
- 12. UITableView, làm cho chân trang ở cuối màn hình?
- 13. Tạo đầu trang và chân trang của trang bằng cách sử dụng CSS để in
- 14. Chiếc đĩa bay giấu đầu trang và chân trang trên trang đầu tiên
- 15. Làm cách nào để lưu trữ đầu trang và chân trang của trang web của tôi ở một vị trí?
- 16. Khả năng in đầu trang/chân trang HTML
- 17. WORD 2010 Macro cho Chỉnh sửa Đầu trang & Chân trang
- 18. Xóa phần đầu trang và chân trang của trình duyệt mặc định khi in HTML
- 19. biết nếu UITableView đã cuộn đầu trang
- 20. Chân trang giống như Tumblr
- 21. Chân trang ở trang in cuối cùng
- 22. Cách tạo đầu trang hoặc chân trang của một ListView không thể bấm
- 23. Chèn đầu trang và chân trang trong ứng dụng web Ruby on Rails?
- 24. Thêm đầu trang và chân trang cho PDF bằng cách sử dụng iTextsharp
- 25. Di động Jquery: Tắt "nhấn để chuyển đổi" đầu trang và chân trang cố định
- 26. cách đặt chiều cao DIV 100% giữa đầu trang và chân trang
- 27. Cách tạo đầu trang/chân trang của tài liệu Word trong php
- 28. wp_enqueue_script ở chân trang
- 29. Bootstrap 3 và Chân trang Chú ý
- 30. Kích thước biểu đồ canvas nổi bật trong ngăn tab Bootstrap trên trang tải ban đầu
Bạn đang sử dụng phiên bản UITableViewController, UITableViewDelegate hoặc UITableViewDataSource hoặc một số lớp trình điều khiển chế độ xem khác? Nếu bạn đang sử dụng một UITableViewDataSource, bạn nên sử dụng tableView: (UITableView *) tableView titleForHeaderInSection: (NSInteger) phần để pragmatically loại bỏ tiêu đề và tableView: (UITableView *) tableView titleForFooterInSection: (NSInteger) phần để loại bỏ footers lập trình. –
Tôi đang sử dụng bộ điều khiển xem bảng. Chỉ cần làm rõ, tôi muốn làm mờ khung nhìn tiêu đề của bảng, không phải tiêu đề của phần –