UIScrollView'da kaydırma göstergelerini gizlemenin bir yolu var mı?


133

Bu göstergelerin kullanıcı etkileşimini bozduğu bir kullanım durumum var. Bir yöntemi alt sınıfa ayırıp geçersiz kılabilir miyim veya kaydırma göstergelerini kaydırma görünümünden kaldırmaya benzer bir şey yapabilir miyim?

Yanıtlar:


272

Set showsHorizontalScrollIndicatorve showsVerticalScrollIndicatorözelliklerini UIScrollViewetmek NO.

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

Belgeler - UIScrollView


Dokümanlar'dan öğrendiğiniz gibi, onu doğrudan kaydırma görünümü için bile kullanabilirsiniz! [kaydırma görünümü setShowsHorizontalScrollIndicator: HAYIR]; Teşekkürler @retainCount
Rajal


61

// UITableView için - Objective-C

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

// UITableView için - SWIFT 3.0

tbl.showsHorizontalScrollIndicator = false
tbl.showsVerticalScrollIndicator = false

// UIScrollView için - Objective-C

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

// UIScrollView için - SWIFT

scrl.showsHorizontalScrollIndicator = false
scrl.showsVerticalScrollIndicator = false

XIB veya film şeridinden değişiklik

görüntü açıklamasını buraya girin


tableView'da bunun için onay kutuları da var - xCode 11 ile çalışıyorum
Andy Weinstein

16

Bunu Swift'de yapmak isteyenler için.

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

8

Swift'deki UIScrollView için

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

4

UITableViewKaydırma özellikleriniz şunlardır :

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

UIScrollViewKaydırma özellikleriniz şunlardır :

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

3

Swift 3.0uzantısı UIScrollViewve UITableView:

import Foundation

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

2
Neden bir uzantı kullanıyorsun? Basit bir görünümde, öğrenmeye çalışan insanlar için işe yaramaz kod satırlarıyla işleri karmaşıklaştırıyorsunuz. ShowsHorizontalScrollIndicator = false işe yarayacaktı…
petaire

2
@petaire - Sakinleşmelisin lol. Aslında bu uzantıyı gerçekten beğendim.
quemeful

Uzantılar bunun için çok fazla, lütfen bu ayarları doğrudan kullanın.
Pedro Paulo Amorim

0

Benim için hiçbir cevap işe yaramadı çünkü göstergelerin odak halkası her seferinde gösteriliyor ancak sorunumu şu yolla çözüyorum: NSStoryboard .

NSCollectionView bir diyagrama sahiptir;

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

görüntü açıklamasını buraya girin

Herhangi bir Scroller nesnesine tıklayın ve ardından Attributes Inspectorset Focus Ringözelliğinde None. Bunu ayarlamadıysanız kullanıcıların değiştirdiğinizde bir sorun olabilir Appearancearasında Darkve Light.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.