2

私はNSCollectionViewItemに動的なサイズを与えようとしています。私はそれらのコンテンツと私が定義した制約によって決定されるサイズを持つことを望みます。例外をスローNSCollectionViewItemの動的サイズ

extension ViewController : NSCollectionViewDelegateFlowLayout { 
    func collectionView(_ collectionView: NSCollectionView, layout collectionViewLayout: NSCollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> NSSize{ 

     let item = collectionView.item(at: indexPath) 
     if let viewItem = item as NSCollectionViewItem? { 
      return viewItem.view.fittingSize 
     } 

     return NSSize(width: 200, height: 100) 

    } 
} 

:私は、次のNSCollectionView保持している私のViewControllerに追加する必要があり、そのために

。それはどこから来た私は表示されません

An uncaught exception was raised 
*** -[__NSArrayM objectAtIndex:]: index 1 beyond bounds [0 .. 0] 

、私はそれをキャッチしようとしましたが、Xcodeはitem(at:)が例外をスローしないことを言います。

編集:実際にはそれが、私は例外ブレークポイントを持っていないし、誰かが他のアイデアを持っていないことは、Appleにバグrepportを送るほかにitem(at:)item(at:) exception

で破りますか? そして、アイテム(at :)はエラーをスローすることは想定されていないので、キャッチブロックは無効です

答えて

0

このメソッドがクラッシュしているとは思いません。ドキュメントから :

戻る:項目が指定されたインデックスパスまたはnilのために何の項目が使用できない場合。

add an exception breakpointを試しましたか?あなたはそれが墜落している場所を見なければなりません。

+0

私は 'item(at:)'が例外を送信しようとしました – Jerome