2012-05-15 17 views
7

İki tableview hücre arasındaki ayırma çizgisini çıkarmak istiyorum. Ancak, ayırıcı yerine, sadece boş bırakılan veya tamamen saydam olan şeffaflık 1 piksellik bir ayırma çizgisi alıyorum.ios UITableView -> UITableViewCellSeparatorStyleNone bir piksel yüksekliği boş bırakıyor

Bir sonraki hücreyi doğrudan yukarıdaki hücreye nasıl ekleyeceğimizi (boşluksuz) uitableview'e nasıl söyleyebilirim?

+0

Sadece bunu farkettiğimi fark ettim. \t kullanıyorum [m_tableView setSeparatorColorColor: [UIColor colorWithRed: 0.0f green: 0.0f blue: 0.0f alpha: 0.0f]]; Bu çizgiden kurtuldu ama sizin söylediğiniz gibi ayırma çizgisini görmeye devam edin. – sradforth

cevap

4

Tamam, benim için cevabı buldum ve paylaşmanın başkalarına yardımcı olması durumunda onu paylaşması. Ben prosedür tüm hücreleri ayarlamak

yüzden ben bu olmadı itiraf etmeliyim, ancak bir sonraki I

m_tableView.separatorStyle = UITableViewCellSeparatorStyleNone; 

aracılığıyla ayırıcı stili ayarlamak

m_tableView setSeparatorColor:[UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.0f]]

aracılığıyla ayırıcı kapalı bir şey yapmak gibi görünüyor ve bu bir redherring olabilir.

Benim için cellForRowAtIndexPath'in hücreyi yapılandırması için çağrıldığını buldum ve çizgiden kurtulmak için arka plan resmimi 1 piksel yüksekliğe çıkarmak zorunda kaldım (bunun için de gerilebilir bir görüntü kullanıyorum) kendini tuhaf + 1 gereksinimi). Ben arbitary + 1'ler hayranıyım değilim ama bu ... hile yapmak gibiydi

frameBackground.size.height += 1; 

dolayısıyla yukarıdaki adımlar benim liste görünümü için çalışmış ve şimdi artık bir ayırıcı var olan bir +1 desteklediği anlamına gelmez iken. Benim başlık sorunum bu şekilde sabit kaldırarak, 1 olarak ayarlanmış olduğunu buldu

0

(Garip hücre ayırıcı ek 1 piksel vardı) Ben 0'a değiştirdi ve hayat daha iyi

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { 
    return 0; 
} 
0

yapamadım görünüyor Ayırıcıdan kurtulmak için sonunda UIScrollView üstüne kendi masa resmimi yazmaya karar verdim. Ve "ayırıcı" hala oradaydı! Görünüşe göre, bir arka plan rengini ayarlarsanız UILabel'da bir hata vardır ve bu da bazen üst kenar boyunca ince bir çizgi çizmesine neden olur. Düzeltme, katmanın arka planını ayarlamaktır: label.layer.backgroundColor = color.CGColor;

İlgili konular