コレクションビューでサイズ変更ビューを使用して動的なセルサイズを作成しようとしています。NSInvalidArgumentException setSizeHasBeenSet認識できないセレクタ - アトリビュート付きテキスト
すべてがうまくいきます。テキストを使用していても、属性付きテキストに変更するとすべてがクラッシュし、やけどします。
私はその後、私は
func configureCell(promo:CMSPromotion) {
if let mainAttributedString = promo.content?.htmlAttributedString() {
mainText.attributedText = mainAttributedString
}
}
セルに私のHTMLをセルクラスで
sizingView.configureCell(promo: promo)
を自分のダイナミックテキストを送信UIlabel
let sizingView = Bundle.main.loadNibNamed("MyNib", owner: self, options: nil)?[0] as? MyCell
とnibファイルを持っています帰属しました
// Convert HTML to NSAttributedString
func htmlAttributedString() -> NSMutableAttributedString? {
guard let data = self.data(using: String.Encoding.utf16, allowLossyConversion: false) else { return nil }
guard let html = try? NSMutableAttributedString(
data: data,
options: [NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType],
documentAttributes: nil) else { return nil }
return html
}
すべてのGoogleで見つかることができるsetSizeHasBeenSetの唯一のリファレンスは_UIFlowLayoutItemですが、なぜこれが適切なのかわかりません。
私は UICollectionView sizeForItemAt IndexPathで同様の質問を参照してくださいが、提供されているコードは、他の問題を持っているので、審査の上、それは、複製ではありません。
から期待の高さを返す錆びsizeForItemAtIndexPathあなたは全体のエラーメッセージを表示してもらえますか? 「インスタンスに送信された認識できないセレクタ」は、呼び出されたメソッドと不一致のクラスオブジェクトを返します。また、stacktrace? – Larme