2016-03-24 18 views
-1

Sadece tablomuzun arka planının sol yarısı veya sağ yarısını renklendirmek istiyorum. Bunu nasıl yönetebilirim? Şimdilik, sadece tüm satır için arka plan rengini ayarlayabiliyorum. Hücrenin sol yarısına bir etiket koymaya ve etiketin arka plan rengini ayarlamaya çalıştım. Ama sorun daha sonra hücrenin içeriğini göremediğim için cell.text etiketini kapladı. Etiketi hücrenin altında ancak hücrenin arka planının üstünde ayarlayıp kuramayacağımı bilmek istiyorum. böylece işini yapabilir. Ancak tablo görünümü hücresinin sadece yarısını boyamak için diğer bir yaklaşım da takdir edilmektedir!Sadece tablonun yarısı için arka plan rengini ayarlamaViewView hücresi

Programlı olarak ayarlamak için @ winnder.ktw'yi denedim. Ancak bir hatam var image bunu nasıl düzeltebilirim? Teşekkürler!

cevap

0

Eğer arayüz oluşturucu kullanıyorsanız, sadece solda Belge Anahat panelinde görüşlerin sırasını değiştirmek ve ne üstünde ne seçebilirsiniz: hepinizi Eğer

Document Outline

Bir etiket eklemeniz gerekmediği için arka plana ihtiyacınız var, sadece hücrenize düzenli bir görünüm ekleyin.

Düzenleme: burada, yalnızca bir görünüm ve etiket ekleyin ve etiketin Belge Anahatları panelinde görünümün altında olduğundan emin olun.

enter image description here

+0

Açık olmak gerekirse, benim sorum deneyin 'nasıl sıranın yalnızca sol yarısında arka plan rengini değiştirmek için?' – DDR

+0

Tam olarak, satırınızın sol yarısına düzenli bir görünüm ekleyin, sonra istediğinizi ekleyin ve Belge Anahatları panelindeki görünümün üzerinde olduğundan emin olun. – dbmrq

+0

Oh, aslında tam tersi, Belge Anahatında arka plan görünümünün altında olması gerekiyor. Cevabımı bir örnekle güncelleyeceğim – dbmrq

-1

bu

- (UITableViewCell *) tableView: (UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath { 

    UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier: @"any-cell"]; 
    if (!cell) { 
     cell = [[UITableViewCell alloc] initWithStyle: UITableViewCellStyleValue1 reuseIdentifier: @"any-cell"]; 

     UIView* bgView = [[UIView alloc] initWithFrame: cell.bounds]; 
     bgView.backgroundColor = [UIColor whiteColor]; 
     UIView* halfView = [[UIView alloc] initWithFrame: CGRectMake(0, 0, cell.bounds.size.width/2.0, cell.bounds.size.height)]; 
     halfView.backgroundColor = [UIColor greenColor]; 
     [bgView addSubview: halfView]; 
     cell.backgroundView = bgView; 
    } 

    return cell; 
} 
+0

Objective C hakkında fazla bir şey bilmiyorum, ancak programatik olarak bir görünüm oluşturduğunuzu anlıyorum. ve emin olmak için, sizin durumunuzda, hücre içeriğini nasıl ayarlayabilir ve oluşturduğunuz görünümlerin kapsamına giremezsiniz? – DDR

+0

Bu kod arka plan görünümünü değiştirir, bu nedenle hücre içeriğini kapatmayın. –

+0

Tamam, sanırım kurulumumla ilgili bir sorunum var. bir hata veriyor çünkü "yakalanmamış istisna 'CALayerInvalid' nedeniyle uygulama sonlandırma, nedeni: katman kendi katman ağacında döngü bir parçasıdır" – DDR

İlgili konular