在非ViewController中显示AlertController的方法

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)



以前我们可以在任何类中使用UIAlertView的show实例方法显示消息框

但是自从废弃了UIAlertView之后,作为替代我们可以使用心得消息框弹出方法UIAlertController来显示,但是该对象只能通过ViewController的presentViewController:alert animated:YES completion:方法来显示.

那么如何在其他类中使用UIAlertController显示消息框呢?

其实很简单,我们可以通过Application的window对象定位到任何我们希望的UIViewController,从而显示消息框,示例代码如下:

UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Reversed" message:
                                msgString preferredStyle:UIAlertControllerStyleAlert];
    UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"OK" style:
                                   UIAlertActionStyleCancel handler:^(UIAlertAction *action){
        [self activityDidFinish:YES];
    }];
    [alert addAction:cancelAction];
    UIViewController *vc = [UIApplication sharedApplication].windows[0].rootViewController;
    [vc presentViewController:alert animated:YES completion:nil];

通过以上代码,可以看到我们是如何取得App中的ViewController对象的.

时间: 2025-01-31 01:58:55

在非ViewController中显示AlertController的方法的相关文章

Beyond Compare输出窗格中显示行号方法

  Beyond Compare输出窗格中显示行号方法         步骤一:打开Beyond Compare软件,在主页面左侧"新建会话"目录中,选择"文本合并"会话,打开会话操作界面. 步骤二:分别单击界面两侧"打开文件"按钮,选择需要合并的源代码文件,您可以选择在独立窗口中显示文本输出窗格,如下图图例所示,默认情况下,窗格中不显示文本行号信息. Beyond Compare 步骤三:将光标停留在输出窗格的左侧任意位置,右键单击并在展开的菜

android-在 textview 或者 toast 中显示参数的方法

问题描述 在 textview 或者 toast 中显示参数的方法 我不能在一个 toast 或者 textfield 中显示 v1,v2,v3 或者 v4 的值,但是可以显示字符串.我调用这些值出错了吗? testWheelValue(R.id.passw_1, v1); testWheelValue(R.id.passw_2, v2); testWheelValue(R.id.passw_3, v3); testWheelValue(R.id.passw_4, v4); testpins =

JS实现alert中显示换行的方法_javascript技巧

本文实例讲述了JS实现alert中显示换行的方法.分享给大家供大家参考,具体如下: 先来介绍一种比较复杂的方法,但这种方法使用起来对所有型号的浏览器都能任意分辨: //浏览器类型判定 function getOs() { if(navigator.userAgent.indexOf("MSIE")>0) { return "IE"; //InternetExplor } else if(isFirefox=navigator.userAgent.indexOf

Word2013中显示批注的方法

  显示批注的方法一: 步骤一:启动Word2013,输入好文字,选中文字,右击,在菜单中选择新建批注. 步骤二:除此之外,还可以直接点击菜单栏--审阅--批注--新建批注来插入批注. 步骤三:插入之后,右侧窗格中就可以直接输入批注内容了 步骤四:隐藏批注之后,页面右上角会有一个图标,点击它即可显示批注. 显示批注的方法二: 步骤一:启动Word2013,A用户新建一文档. 步骤二:单击"插入"选项卡,然后选中需要插入批注的文字或图片,单击"批注",输入批注的内容.

PHP中显示出错提示方法介绍

一:php.ini配置 php.ini配置中与此相关的有两个配置变量.下面是这两个变量及其默认值: 以下是引用片段:  代码如下 复制代码 display_errors = Off error_reporting = E_ALL & ~E_NOTICE display_errors 变量的目的很明显 -- 它告诉PHP是否显示错误.默认值是 Off.现在我们的目的是显示错误提示,那么: 以下是引用片段:  代码如下 复制代码 display_errors = On E_ALL,这个设置会显示从不

Powershell中显示隐藏文件的方法_PowerShell

支持PS3.0及以后版本. 当你使用 Get-ChildItem 检索文件,默认是不显示隐藏文件的. 要包含隐藏文件,请使用 –Force 参数. 复制代码 代码如下: PS> Get-ChildItem -Path $home -Force 如果只需要显示隐藏文件,可以使用参数-Hidden ,但它只支持PS3.0. 复制代码 代码如下: PS> Get-ChildItem -Path $home -Hidden     Directory: C:\Users\Tobias Mode    

Excel2010如何在一个单元格中显示图表

往往我们用到的Excel插入图表时,图表都会占据很多个单元格,有没有什么办法能够让图表只在一个单元格中显示呢?其实方法是有的,目前最新版本的Excel2010就有这项功能,叫"迷你图表",下面就带领大家一起来看看Excel2010中是如何插入迷你图表的! 步骤一.首先,打开Excel表格,然后鼠标左键单击选中需创建迷你图表的单元格,切换到"插入"功能选项卡中,在"迷你图"组中,单击一种迷你图表类型(目前只有3种迷你图:拆线图.柱线图.盈亏图)按钮

XP系统中添加/删除程序面板中显示空白怎么回事?

  xp系统现在还是有一些用户在使用,最近就有客户说自己想要删除一些不想要常用的软件,打开自己控制面板里面的删除或者添加程序进行操作,结果发现里面是空白的,点击上方的程序也没有反应,不知道是怎么回事,点击下方的添加删除组件设置又是可以点击的,如何解决这个空白的问题呢,小编马上就给大家讲述一下具体的方法. 具体方法: 1.第一步大家点击打开开始菜单,在菜单中找到运行选项,点击打开运行选项后就会弹出输入框,在运行输入框中输入命令cmd并单击回车,直接就可以打开系统中的命令提示符窗口. 2.在命令提示

我的Android进阶之旅------> Android为TextView组件中显示的文本添加背景色

通过上一篇文章 我的Android进阶之旅------> Android在TextView中显示图片方法 (地址:http://blog.csdn.net/ouyang_peng/article/details/46916963)      我们学会了在TextView中显示图片的方法,现在我们来学习如何为TextView组件中显示的文本添加背景色.要求完成的样子如图所示: 首先来学习使用BackgroundColorSpan对象设置文字背景色,代码如下: TextView textView=(