0

我有一个带有大型交互式控件的自定义内容视图,其中包含多个附加了平移手势的子视图。控件左侧的交互位起作用,但右侧的位不起作用。

我的猜测是有一些观点吸收了这些手势。有没有办法确保手势在控制侧或表格单元侧通过?

我尝试过执行以下操作:

    [[cell textLabel] removeFromSuperview];
    [[cell accessoryView] removeFromSuperview];
    [[cell backgroundView] removeFromSuperview];
    [[cell contentView] addSubview:display]; //adding my custom view
4

1 回答 1

2

我遇到过类似的问题,单元格限制了 contentView 的宽度。尝试将 contentView 的背景颜色设置为绿色或其他颜色 - 这是就可用区域而言您将获得的最大值。

我相信您需要做的是,当您知道用户想要与控件交互时,将其从单元格中拉出并将其添加到主视图中。完成后,将其放回原处。当然,在此期间,您必须防止滚动。

如果移动控件导致触摸流出现问题,您可以添加另一个覆盖控件的清晰视图,拦截第一次触摸,移动控件,然后将触摸转发给控件。

显然,这种技术可以帮助您在控件移动后最终触摸到控件的整个表面,但是如果它太靠右,最初的触摸将不起作用。

于 2012-08-21T01:22:27.960 回答