사용자 정의 셀을 만들었습니다.이 셀에는 UIImageView
만 있어야합니다. 이미지가 변경되면 셀에 이미지에 맞는 높이를 변경해야합니다Eureka : 맞춤 행의 동적 높이
import UIKit
import Eureka
public class FirebaseImageCell: Cell<UIImage>, CellType{
@IBOutlet weak var customImageView: UIImageView!
public override func setup() {
super.setup()
}
public override func update() {
super.update()
guard let image = row.value else { return }
customImageView.image = image
guard let cellWidth = UIApplication.shared.keyWindow?.frame.width else { return }
height = { cellWidth * (image.size.height/image.size.width) }
}
}
public final class FirebaseImageRow: Row<FirebaseImageCell>, RowType {
required public init(tag: String?) {
super.init(tag: tag)
cellProvider = CellProvider<FirebaseImageCell>(nibName: "FirebaseImageCell")
}
}
을 나는이 같은 행을 작성 :
let image = UIImage(named: "testImage")!
let testSection = Section("Test Section")
<<< FirebaseImageRow("firebaseImageRow") { row in
row.value = image
}
form +++ testSection
어떤 시점에서 내가 셀에 이미지를 변경하려면 , 세포가 이미지에 맞게 높이를 변경해야합니다. 여기 이미지 변경 :
형태가 올바른 높이 세포를 얻을 수 초기화func imageChange() {
guard let imageRow = form.rowBy(tag: "firebaseImageRow") as? FirebaseImageRow else { return }
let image = UIImage(named: "testImage2")
imageRow.value = image
imageRow.updateCell()
}
, fittet에 "testImage을"하지만, 이미지가 변경 후 높이가 동일하게 유지.
어떻게 셀의 높이를 동적으로 변경할 수 있습니까?