无法让 convertRect: fromView 工作
Can't get convertRect: fromView to work
在我的 viewController
中,我有这个 tableView
和自定义单元格。
在我的 cellForRow:atIndexPath:
方法中,我想根据我的 viewController 的 坐标访问位置 (rect
)显示在特定单元格内的 UIButton 的 system。
这就是我认为它会起作用的方式:
func tableView(tableView: UITableView,
cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCellWithIdentifier("cellId") as? MyCell
if cell != nil {
cell = MyCell(style: .Default, reuseIdentifier: "cellId")
}
let convertedFrame = view.convertRect(cell!.myButton.Frame, fromView: cell)
return cell!
}
它只是在它自己的坐标系中给我按钮的当前帧(0.0, 0.0, 44.0, 44.0)
关于正确使用该方法的任何线索?
这只是在单元格实际放置在视图层次结构中之前调用它的问题。感谢 rmaddy 指出。
改变
let convertedFrame = view.convertRect(cell!.myButton.Frame, fromView: cell)
至
let convertedFrame = view.convert(cell!.myButton.Frame, fromView: cell)
在我的 viewController
中,我有这个 tableView
和自定义单元格。
在我的 cellForRow:atIndexPath:
方法中,我想根据我的 viewController 的 坐标访问位置 (rect
)显示在特定单元格内的 UIButton 的 system。
这就是我认为它会起作用的方式:
func tableView(tableView: UITableView,
cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCellWithIdentifier("cellId") as? MyCell
if cell != nil {
cell = MyCell(style: .Default, reuseIdentifier: "cellId")
}
let convertedFrame = view.convertRect(cell!.myButton.Frame, fromView: cell)
return cell!
}
它只是在它自己的坐标系中给我按钮的当前帧(0.0, 0.0, 44.0, 44.0)
关于正确使用该方法的任何线索?
这只是在单元格实际放置在视图层次结构中之前调用它的问题。感谢 rmaddy 指出。
改变
let convertedFrame = view.convertRect(cell!.myButton.Frame, fromView: cell)
至
let convertedFrame = view.convert(cell!.myButton.Frame, fromView: cell)