ios 怎么判断有没有alerview正在显示

 我来答
langmanxue
2016-08-14 · 超过83用户采纳过TA的回答
知道小有建树答主
回答量:112
采纳率:0%
帮助的人:102万
展开全部
iOS判断当前控制器是否正在显示

1
2
3
4

+(BOOL)isCurrentViewControllerVisible:(UIViewController *)viewController
{
return (viewController.isViewLoaded && viewController.view.window);
}

也可以将该方法定义在UIViewController的分类中, 方便多处调用

假如一个UIView对象当前正在显示,那么它的window属性肯定为非空值。
虽然官方文档未说明UIView未显示时window属性的取值,但是经过简单的测试,大部分情况下UIView未显示时,
window的值为空,因此依据此判断当前UIViewController是否正在显示。但是访问UIViewController的view属性时,
可能会引起view加载(假如此时还未加载),这是不必要的,而且还可能引起无法预期的问题。因此在访问view属性之前,最好先检查isViewLoaded属性来避免上述问题。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式