【发布时间】:2013-10-19 00:53:48
【问题描述】:
我在我的 tableviewcell 中添加了一个水平 UIPanGestureRecognizer 来平移单元格的子视图,就像 ios7 邮件应用程序显示删除和更多选项的方式一样,这可以按预期工作
- (IBAction)slideCell:(UIPanGestureRecognizer *)sender
{
CGPoint locationOfPan = [sender locationInView:self.tableView];
NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:locationOfPan];
TestCell *cell = (TestCell *)[self.tableView cellForRowAtIndexPath:indexPath];
if (sender.state == UIGestureRecognizerStateChanged) {
CGPoint translation = [sender translationInView:self.tableView];
[cell.view setCenter:CGPointMake(cell.view.center.x + translation.x, cell.view.center.y)];
[sender setTranslation:CGPointMake(0, 0) inView:self.tableView];
}
}
我还想做的是向我的每个 UITableViewCells 添加一个带有锚点的 UIAttachmentBehavior,这样当我水平平移 cell.view 时,我会感到一些阻力,然后当我放手时,单元格中的视图被平移弹回到它在 x 轴上的原始锚点位置,这可能与 UIDynamics 有关吗?
我还可以将单元格的一侧设置为边界,以防止用户将包含的视图平移到它之外吗?
【问题讨论】:
标签: ios objective-c uitableview ios7 uikit-dynamics