0
クラスファイル内のUICollectionViewCellのサイズを変更するにはどうすればよいですか?カスタムUICollectionViewCellクラス:Swift 3の高さを変更する方法
は、ここに私のコード(あるいは、むしろ、関連する機能を持つ私のコードの抜粋)です:
class FeedCell: UICollectionViewCell {
func resizeToText(text: String) {
self.backgroundColor = UIColor.black
UIView.animate(withDuration: 0.15, animations: {
let oldSize = self.feedTextView.frame.size
var newSize = estimatedFrameForText(text: text, contentViewWidth: oldSize.width, maxSize: 500, font: self.feedTextView.font!, fontSize: self.feedTextView.font!.pointSize)
newSize.width = oldSize.width
self.feedTextView.frame.size = newSize
let heightDiff = oldSize.height - newSize.height
self.feedImageView.frame.origin.y -= heightDiff
self.mainView.frame.size.height -= heightDiff
// I'm changing the cells size but it doesn't change :(
self.contentView.frame.size.height -= heightDiff
let oldSize2 = self.feedTextView.frame.size
let newSize2 = self.feedTextView.contentSize
self.feedTextView.frame.size = self.feedTextView.contentSize
let diff = oldSize2.height - newSize2.height
self.feedImageView.frame.origin.y -= diff
self.mainView.frame.size.height -= diff
// here again!
self.contentView.frame.size.height -= diff
self.mainView.dropShadowFeed(scale: true)
})
}
}
私もself.frame.size.heightを試みたが、それはしませんいずれかの作業。
目標は、セルがフィード内にあり、手動でそれが表示されているテキストのサイズを変更することです。これをプログラムでどのように行うのですか?あなたはcollectionviewcellのフレームを設定したい場合は、このデリゲートの機能でそれを設定する必要が
(CGSize)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath;
: