未调用 alertviewcontroller 中的 tableview 的“cellForRowAtIndexPath”

Posted

技术标签:

【中文标题】未调用 alertviewcontroller 中的 tableview 的“cellForRowAtIndexPath”【英文标题】:"cellForRowAtIndexPath" for a tableview inside alertviewcontroller not called 【发布时间】:2018-04-03 10:16:26 【问题描述】:

我在 alertviewcontroller 中添加了一个 tableview,我已经为 table 提供了委托和数据源。调用除 cellForRowAtIndexPath 之外的所有委托和数据源方法。我已经为部分中的行数返回了一个静态值,以防止出现 0 行。它仍在发生。

【问题讨论】:

显示一些代码。 所以你把表格视图放在警报视图控制器中?这似乎可怕错误。我强烈建议改为创建自定义 UI。 @the4kman 正是我在想,我想看看现场。 你能推荐一个替代方案吗? @AbhishekMaster 这取决于您想要实现的目标。正确定义你的问题,这是非常不清楚的。 【参考方案1】:

您不应该修改UIAlertController 的视图层次结构。你要么需要创建自己的视图控制器来模仿警报控制器,要么找到一个框架来为你做这件事。

引用 Apple 文档:

此类的视图层次结构是私有的,不得修改。

【讨论】:

【参考方案2】:

我建议您创建一个自定义 UIViewController,添加所需的功能并将其呈现为表单。参考https://developer.apple.com/library/content/featuredarticles/ViewControllerPGforiPhoneOS/PresentingaViewController.html

【讨论】:

以上是关于未调用 alertviewcontroller 中的 tableview 的“cellForRowAtIndexPath”的主要内容,如果未能解决你的问题,请参考以下文章

解析中的 AlertViewController

自定义 AlertViewController 未在横向中正确显示

如何编辑 alertViewController 而不根据操作将其关闭

markdown alertviewcontroller

将 ChildViewController 添加到 UIAlertController

调用的 API 响应中未定义的调用函数