2016-05-29 14 views
7

Bu hatayı, kodumda "Hata ayıklayıcıda yakalamak için UICollectionViewFlowLayoutBreakForInvalidSizes öğesinde sembolik bir kesme noktası oluştur" yazdığını anladım. Buradaki soruyu sorduğumda, nereden geldiğinden emin olmamı istediğini düşündüğüm kod nedir?UICollectionViewFlowLayoutBreakForInvalidSizes öğesinde sembolik bir kesme noktası oluştur

import UIKit 

// MARK: - CUSTOM SOCIAL CELL 
class SocialCell:UICollectionViewCell { 

    /* Views */ 
    @IBOutlet weak var socialIcon: UIImageView! 
    @IBOutlet weak var socialLabel: UILabel! 
} 

class SocialList: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout { 

    /* Views */ 
    @IBOutlet weak var socialCollView: UICollectionView! 

    override func viewDidLoad() { 
     super.viewDidLoad() 

    } 

    // MARK: - COLLECTION VIEW DELEGATES 
    func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int { 
     return 1 
    } 

    func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { 
     return socials.count //socialNames.count 
    } 

    func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { 
     let cell = collectionView.dequeueReusableCellWithReuseIdentifier("SocialCell", forIndexPath: indexPath) as! SocialCell 

     cell.socialLabel.text = "\(socials[indexPath.row]["name"]!)" 
     cell.socialIcon.image = UIImage(named: "\(socials[indexPath.row]["name"]!)") 

     return cell 
    } 

    func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize { 
     return CGSizeMake(view.frame.size.width/3.8, view.frame.size.width/3.8) 
    } 

    func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) { 
     selectedSocial = "\(socials[indexPath.row]["link"]!)" 
     selectedName = "\(socials[indexPath.row]["name"]!)" 
     selectedColor = socialColors[indexPath.row] 

     navigationController?.popViewControllerAnimated(true) 
    } 
} 

cevap

26

Sen sistematik yaparak bu çözebilir: Sana daha spesifik konuyu açabilir, böylece

Ayrıca, sizin tam hatayı paylaşmalıdır. Benim düşünce Eğer

enter image description here

altındaki artı düğmesini

Sonraki tıklayın sol Break Point navigasyoncumuzu tıklayın UICollectionView projeniz solunda

yılında autoLayout konunun çeşit ve olmasıdır tıklayın ekle Sembolik breakPoint

enter image description here

Sonra bir açılır pencere gösterilecektir. Proje bu yüzden bunu yaptım mükemmel

+0

Tamam durur nerede sadece (klavyede) butonu, Bundan sonra bu kadar

enter image description here

öylece orada UICollectionViewFlowLayoutBreakForInvalidSizes ekleyin ve her yerde

tıklayarak kodu çalıştırın ve görün ve Facebook sayfasını yükledikten sonra uygulamayı tekrar koştum ama bir fotoğraf eklemek için tıkladığımda sadece sayfayı yeniliyor, şimdi bunu daha önce Xcode'ta çekiyor: –

+2

UIKit'UICollectionViewFlowLayoutBreakForInvalidSizes: -> 0x1123ebabc <+0>: pushq% RBP 0x1123ebabd <+1>: movq% RSP,% RBP 0x1123ebac0 <+4>: TestQ% rdi,% RDI 0x1123ebac3 <+7> je 0x1123ebac7; <+11> 0x1123ebac5 <+9>: popq% RBP 0x1123ebac6 <+10>: retq 0x1123ebac7 <+11>: leaq 0x4a1042 (% RIP),% RDI; @ "' '" 0x1123ebace <+18>: xorl% eax% eax 0x1123ebad0 <+20>: popq% RBP 0x1123ebad1 <+21>: JMP 0x1125b3e90; Sembol saplaması: NSLog –

+1

@ThreeSuitStudiosLLC, bellek tutamaçlarını nasıl anlayacağınızı anladınız mı? – Jobs

İlgili konular