UI警报表视图在ios7中不起作用

Posted

技术标签:

【中文标题】UI警报表视图在ios7中不起作用【英文标题】:UI alert tableview not working in ios7 【发布时间】:2014-02-11 10:36:11 【问题描述】:

我在 ios7 的 uialerttable 视图中遇到问题。我使用了在 ios6 中工作的相同代码,但在 ios7 中不受支持。它不会用于表格视图的行索引路径的单元格。这个链接https://github.com/blommegard/SBTableAlert,我已经下载了它可以正常运行ios 6,但ios 7有问题请朋友们帮帮我。提前谢谢。

【问题讨论】:

【参考方案1】:

iOS 不支持在 iOS 7 之后将subview 添加到UIAlertView。所以你使用的库不能在 iOS7 或更高版本中运行。

【讨论】:

【参考方案2】:

如果您对 github 代码有任何问题,只需查看 Github 代码页中的问题列表即可。我建立了该页面中提到的解决方案。看看这个link。他们将UIAlertView 替换为TSAlertView。

【讨论】:

【参考方案3】:

我在使用这种类型的控制器时遇到了同样的问题(UIAlertView 中的UITableView)并且花了很多时间来调试这个问题。

令人失望的是,从iOS7 不能将任何subview 添加到UIAlertView,并且所有此类控制器都使用相同的方法。他们将UITableView 插入为subview of UIAlertView

因此,对于您的解决方案,您必须放弃使用此控制器的选项并创建您自己的控制器或根据您的需要找到其他一些控制器。

【讨论】:

【参考方案4】:

iOS 7 以后你不能添加SubView。所以如果你能确定操作系统版本并相应地设置表格。

#define IS_OS_7_OR_LATER  ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0)

if(IS_OS_7_OR_LATER) 

    [yourAlertView setValue:yourTableView forKey:@"accessoryView"];

else
  
   [yourAlertView addSubview:yourTableView];

不要使用自定义库,而是创建自己的 tableViewcontroller 类并将其添加为子视图或将其设置为附件视图。

【讨论】:

以上是关于UI警报表视图在ios7中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

alertview 中的图像在 ios7 中不起作用

didSelectItemAt 在 SCLAlertView 中不起作用

UIProgressView 跟踪和进度图像在 iOS7 中不起作用

autoHideDuration 在 Snackbar @material-ui 中不起作用

Kendo UI 参考在 Razor 视图中不起作用

Javascript 警报在 asp.net 的更新面板中不起作用