0

我正在学习 JTCalendar(版本 6.1.5)的教程。当我在 iPhone SE 等较小的手机上运行时,选择视图中圆圈的一侧会被剪掉。这是因为单元格大约为 45x45 点,但选择视图的大小为 50x50 点,因此太大而无法完全放入单元格中。

  • 如何使我的选择视图适合不同大小的日期单元格?

  • 如何获得cornerRadius选择视图圈的正确值?

4

1 回答 1

1

我能够解决这个问题。问题是本教程设置了选定视图的大小并将其保留在那里。我所做的是

  1. Made Outlets 中的宽度和高度限制CellView.swift

  2. ViewContoller.swift中,我修改了单元格选择如下:

    if cellState.isSelected {
        var parentMinDimension = min(view.frame.width, view.frame.height)
        parentMinDimension = round(parentMinDimension - 0.5)
        myCustomCell.widthConstraint.constant = parentMinDimension
        myCustomCell.heightConstraint.constant = parentMinDimension
        myCustomCell.selectedView.layer.cornerRadius = parentMinDimension / 2
        myCustomCell.selectedView.isHidden = false
    } else {
        myCustomCell.selectedView.isHidden = true
    }
    

这将获取父视图并确定较小的维度。这需要四舍五入。然后我使用这个父视图尺寸来设置 CellView 的宽度和高度以及确定角半径。

于 2017-03-19T21:32:42.197 回答