Birisi bana UIScrollView
örneğinde contentInset özelliğinin ne için kullanıldığını açıklayabilir mi? Ve belki bir örnek sağlar?UIScrollView contentInset özelliği nedir?
cevap
İç görünümün içerik görünümü ile sarmal kaydırma görünümü arasındaki uzaklığını ayarlar. aScrollView.contentInset = UIEdgeInsetsMake(0, 0, 0, 7.0);
İşte bilgilendirici bir ekran görüntüsü (Şekil 1-3) sahiptir iyi iOS Reference Library article on scroll views var - Burada metin yoluyla çoğaltmak gerekir:
_|←_cW_→_|_↓_
| |
---------------
|content| ↑
↑ |content| contentInset.top
cH |content|
↓ |content| contentInset.bottom
|content| ↓
---------------
_|_______|___
↑
(cH = contentSize.height; cW = contentSize.width)
kaydırma görünümü içerik görünümü çevreler artı ne olursa olsun dolgu sağlanır belirtilen içerik bilgileriyle.
Harika bir soru.
(scroller
bir UIScrollView olan) Aşağıdaki örneği inceleyin:
float offset = 1000;
[super viewDidLoad];
for (int i=0;i<500; i++) {
UILabel *label = [[[UILabel alloc] initWithFrame:CGRectMake(i * 100, 50, 95, 100)] autorelease];
[label setText:[NSString stringWithFormat:@"label %d",i]];
[self.scroller addSubview:label];
[self.scroller setContentSize:CGSizeMake(self.view.frame.size.width * 2 + offset, 0)];
[self.scroller setContentInset:UIEdgeInsetsMake(0, -offset, 0, 0)];
}
takmalar istediğiniz içeriği üzerinde bir "pencere" sahip olmasını kaydirac zorlamak için SADECE yoldur. Hala bu örnek kod ile uğraşıyorum, ama fikir şu: UIScrollView
üzerinde bir "pencere" almak için insets kullanın.
Jball'un yanıtı, içerik özetlerinin mükemmel bir açıklaması olsa da, ne zaman kullanılacağını sormaz.
_|←_cW_→_|_↓_
| |
---------------
|content| ↑
↑ |content| contentInset.top
cH |content|
↓ |content| contentInset.bottom
|content| ↓
---------------
|content|
-------------↑-
bunu yaparken ne olsun Yani, ama bunun faydası sadece kaydırırken gösterir: Onun şemalar ödünç edeceğiz içeriğin üst satırı hala olacaktır
_|←_cW_→_|_↓_
|content| ← content is still visible
---------------
|content| ↑
↑ |content| contentInset.top
cH |content|
↓ |content| contentInset.bottom
|content| ↓
---------------
_|_______|___
↑
O Görünüşe göre hala kaydırma görünümü çerçevesinde. Ofset üst düşünmek bir yolu kurmak bakmak,
bu aslında kullanılan bir yer görmek için "ne kadar biz üst tüm yol kaydırılan yaparken kaydırma görünümünde aşağı içeriği kaydırmaya" dir iphone'da -in Resimleri uygulaması. Gezinme çubuğu ve durum çubuğu saydamdır ve kaydırma görünümünün içeriği altında görünür. Bunun nedeni, kaydırma görünümünün çerçevesinin o kadar uzağa uzanmasıdır. Ancak içeriğin içeri girmesi için değilse, içeriğin en üst kısmına gittiğinizde şeffaf gezinme çubuğunu temizleyemezsiniz.
İçerik kalıpları, Kullanıcı Arabiriminin diğer bölümlerinin altına giren içeriğe sahip olma sorununu çözmektedir ve yine de kaydırma çubuklarını kullanarak erişilebiliyor. Başka bir deyişle, İçerik Ekleminin amacı, etkileşim alanını gerçek alanından daha küçük yapmaktır. biz ekranın üç mantıksal alanları vardır nereye
durum düşünün:TOP BUTTONS
TEXT
BOTTOM TAB BAR
ve biz METİN TOP DÜğMELER altında şeffaf görünmesini asla istiyorum, ama biz Metin ALT TAB BAR altında görünmesini istediğiniz ve yine de kaydırmaya izin verir, böylece metinleri ALT TABLOSU altında şeffaf bir şekilde güncelleyebiliriz.
Ardından, üst kökü TOP DÜĞMELERİ'nin altına ve BOTTOM TAB BAR'ın altını da dahil edecek yüksekliğe ayarlayacağız. ALT TAB BAR içeriğinin altında yer alan Metinlere erişmek için, alttaki eki, ALT TAB BAR'ın yüksekliği olacak şekilde ayarlayacağız.
Girinti olmadan, kaydırıcı içeriği yazacak kadar kaydırmanıza izin vermez. Eklemle, içeriğin ek içeriğe ek olarak "BLANK CONTENT" içeriyor olması gibi. Boş metin, gerçek "içerik" in içine "eklenmiş" - bu yüzden kavramı hatırlıyorum.
O contentInset
olmadan UIScrollView
yılında dolgu eklemek için kullanılır, bir tablo görünümü şu şekildedir: etki aşağıdaki gibidir
tableView.contentInset = UIEdgeInsets(top: 20, left: 0, bottom: 0, right: 0)
:
Sonra contentInset
set :
Daha iyi görünüyor mu?
Ve ben contentInset
'u incelemek için bir blog yazdım, eleştiri kabul edilir.
- 1. UIScrollView
- 2. ContentInset öğesini RecyclerView öğesinde ayarlayın
- 3. UIScrollView
- 4. UIScrollView?
- 5. UIScrollView
- 6. - [NSURL isFileReferenceURL] özelliği nedir?
- 7. Gerçekten kullanılan 'kurucu' özelliği nedir?
- 8. XML özelliği xmlns: app nedir?
- 9. UIScrollView dokunuşları işe yaramıyor
- 10. geçersiz kılma temsilci özelliği
- 11. UIScrollView contentView
- 12. ECMAScript'te accessor özelliği ile data özelliği arasındaki fark nedir?
- 13. Kullanılan orijinal paket AndroidManifest özelliği nedir?
- 14. Çarpışmaya neden olan bit modelinin özelliği nedir?
- 15. UIScrollView: setContentOffset arasındaki fark animasyonlu
- 16. Offset UIScrollView bir çocuktan ViewController
- 17. UIScrollView: Kaydırma çalışmaz
- 18. Otomatikleştir UITextView ve UIScrollView
- 19. UIScrollView, kaydırıldıkları her seferde
- 20. Çoklu MPMoviePlayerControllers ve UIScrollView
- 21. UIScrollView Dikey Kaydırma Göstergesi
- 22. UIScrollView autoresizemask çalışmıyor
- 23. UIScrollView setZoomScale çalışmıyor?
- 24. UIScrollView contentSize Sayı
- 25. Dikey Sayfalama UIScrollView Kullanma
- 26. UIScrollView, ScrollBars/Indicators'ı göremez.
- 27. UIScrollView + UIWebView = NO scrollsToTop
- 28. UIScrollView, görünüm hiyerarşiğimde mevcutModalViewController
- 29. UIScrollView üzerinden UIGestureRecognizer
- 30. Görselleri büyük bir UIScrollView
o zaman UIScrollView'a bir dolgu eklemek ister mi? Eğer bana pratik bir örnek veremezsen. Benim problemim onu nasıl uygulayacak değil, ne zaman uygulayacağınız. – ForeignerBR
Evet, içeriğin içeriğini kaydırma görünümünün içindedir. CSS 'padding' özelliği benzer. –
Bunun için üzgünüm, kendi sorusunu taşıyabilirim, ancak buna dayanarak, her bir contentInset değerini örneğin contentHeight dışında 0 olarak ayarlarsanız ne olur? Bu, tüm kaydırma görünümünü ayarladığınız yüksekliğe zorlar mı? – jakev