设备旋转后 UITableView 部分失去交互

发布于 2024-12-10 11:17:03 字数 461 浏览 1 评论 0原文

我有一个 UIViewController,其中有一个 UIView 子类作为子视图,这里有一个 UITableView 添加为该 UIView 的子视图,如下所示:

UIViewController
-UIView
--UITableView (plucked from a UITableViewController)

在 iPad 上,如果我以任一方向加载视图控制器,我可以与表视图完美交互。但是,如果我将设备旋转到新的方向 - 我有代码可以更改框架以使其适合新的分辨率,但桌子的一小部分区域不会响应触摸等。

例如,我们将纵向旋转为横向:如果您想象将纵向形状放置在横向屏幕上 - 该区域保持响应,但右侧的一小条不响应。

有谁知道我可能错过了什么?提前致谢。

编辑:我已经成功验证了从 tableview 单元格到顶部 UIViewController 的所有对象的 CGRect 框架。

I have a UIViewController with a UIView subclass as a subview, and in here is a UITableView added as a subview of that UIView, as follows:

UIViewController
-UIView
--UITableView (plucked from a UITableViewController)

On an iPad, if I load the view controller in either orientation I can interact with the table view perfectly. However, if I rotate the device to a new orientation - I have code that alters the frames to make it fit the new resolution, but a small area of the table does not respond to touches and whatnot.

eg, we rotate portrait to landscape: if you imagine a portrait shape placed over a landscape screen - this area remains responsive, but a small strip to the right hand side does not respond.

Does anyone have any ideas what I may have missed? Thanks in advance.

EDIT: I have successfully verified the CGRect frames of all objects from the tableview cells through to the top UIViewController.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

谁把谁当真 2024-12-17 11:17:03

旋转后失去交互作用的区域必须落在其超级视图的框架之外。

您可以通过设置 tableView.clipSubviews = YES 进行检查;

使用这个,将裁剪掉在超级视图之外的表视图部分。

The area that looses its interaction must have fallen outside its superview's frame after rotation.

you can check that by setting tableView.clipSubviews = YES;

using this, will crop the tableview portion falling outside the superview.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文