Có cách nào để ẩn các chỉ báo cuộn trong UIScrollView không?


133

Tôi đã có một trường hợp sử dụng trong đó các chỉ số đó làm phiền sự tương tác của người dùng. Tôi có thể phân lớp và ghi đè một phương thức hoặc làm một cái gì đó tương tự để xóa các chỉ báo cuộn khỏi chế độ xem cuộn không?

Câu trả lời:


272

Đặt showsHorizontalScrollIndicatorshowsVerticalScrollIndicatortính chất của UIScrollViewđể NO.

[tableView setShowsHorizontalScrollIndicator:NO];
[tableView setShowsVerticalScrollIndicator:NO];

Tài liệu - UIScrollView


Như đã học từ Docs, bạn thậm chí có thể sử dụng nó cho scrollview trực tiếp! [scrollview setShowsHTHERScrollTheicator: NO]; Cảm ơn @retainCount
Rajal

1
Kể từ iOS 11, cái này nên được gọi trong viewWillAppear, nó không hoạt động nếu được gọi trong viewDidLoad
melvinto

60

// Đối với UITableView - Objective-C

tbl.showsHorizontalScrollIndicator = NO;
tbl.showsVerticalScrollIndicator = NO;

// Đối với UITableView - SWift 3.0

tbl.showsHorizontalScrollIndicator = false
tbl.showsVerticalScrollIndicator = false

// Đối với UIScrollView - Objective-C

scrl.showsHorizontalScrollIndicator = NO;
scrl.showsVerticalScrollIndicator = NO;

// Đối với UIScrollView - SWift

scrl.showsHorizontalScrollIndicator = false
scrl.showsVerticalScrollIndicator = false

Thay đổi từ XIB hoặc bảng phân cảnh

nhập mô tả hình ảnh ở đây


tableView cũng có các hộp kiểm cho việc này - Tôi đang làm việc với xCode 11
Andy Weinstein

16

Đối với những người tìm kiếm để làm điều này trong Swift.

self.tableView.showsHorizontalScrollIndicator = false
self.tableView.showsVerticalScrollIndicator = false

8

Đối với UIScrollView trong Swift

scrollView?.showsHorizontalScrollIndicator = false
scrollView?.showsVerticalScrollIndicator = false

4

Đây là các UITableViewthuộc tính cuộn của bạn :

[YourTableView setShowsHorizontalScrollIndicator:NO];
[YourTableView setShowsVerticalScrollIndicator:NO];

Đây là các UIScrollViewthuộc tính cuộn của bạn :

[YourScroll setShowsHorizontalScrollIndicator:NO];
[YourScroll setShowsVerticalScrollIndicator:NO];

3

Swift 3.0mở rộng cho UIScrollViewUITableView:

import Foundation

extension UIScrollView {
    func hideIndicators() {
        showsHorizontalScrollIndicator = false
        showsVerticalScrollIndicator = false
    }
}

2
Tại sao bạn đang sử dụng một phần mở rộng? Bạn đang làm phức tạp mọi thứ với các dòng mã vô dụng cho những người đang cố gắng học, khi một chế độ xem đơn giản.showsHTHERScrollTheicator = false sẽ hoạt động như vậy
petaire

2
@petaire - Bạn cần bình tĩnh lol. Tôi thực sự thực sự thích phần mở rộng đó.
tuyệt vời

Tiện ích mở rộng quá mức cho việc này, vui lòng sử dụng các cài đặt này trực tiếp.
Pedro Paulo Amorim

0

Không có câu trả lời nào phù hợp với tôi vì vòng tập trung của các chỉ số được hiển thị mỗi lần nhưng tôi giải quyết vấn đề của mình thông qua NSStoryboard.

NSCollectionView có sơ đồ;

Scroll View - Collection View then Clip View then Scroller (vertical) & Scroller (Horizontal)

nhập mô tả hình ảnh ở đây

Nhấp vào bất kỳ đối tượng Scroller sau đó trong Attributes Inspectorbộ Focus Ringtài sản để None. Nếu bạn chưa đặt, bạn có thể gặp sự cố khi người dùng thay đổi Appearancegiữa DarkLight.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.