【发布时间】:2020-06-03 20:11:39
【问题描述】:
我已将此UIView 添加到我的UITableView:
self.tableView.addSubview(viewInfoPlus)
self.viewInfoPlus.frame = CGRect.init(x: kWidth - 193 - 32, y: 751, width: 193, height: 103)
用红色箭头表示的那个。
屏幕截图中的 UIView 具有正确的框架,但是当我尝试重新加载 UITableView 或仅使用一些单元格/单元格时:
let indexPath = IndexPath.init(row: 0, section: TableSection.plus.rawValue)
UIView.setAnimationsEnabled(false)
self.tableView.beginUpdates()
tableView.reloadRows(at: [indexPath], with: .none)
self.tableView.endUpdates()
UIView.setAnimationsEnabled(true)
UIView 自动将框架更改为错误的框架,如您在此屏幕截图中所见。
但是当用户滚动到UITableVIew 的顶部时,UIView 会自动再次将其框架更改为右侧。
显然我从来没有改变过代码中的框架。
【问题讨论】:
-
我不确定我是否完全理解了这个问题。但我猜你希望弹出视图跟随第一个屏幕截图中显示的 0€?如果是这种情况,那么我认为您应该 addSubview(viewInfoPlus) 不是 tableview 而是 viewcell 。但是更多关于如何构建视图控制器的信息会有所帮助(比如这些卡片本身就是单元格)
-
是的,没错。如果我将视图添加到视单元它可以完全显示...它将被裁剪
-
您是否尝试将单元格 clipToBounds 设置为 false?
标签: ios swift uitableview uiview cgrect