IOS 中弹框的实现方法整理

IOS 中弹框的实现方法整理

#define iOS8Later ([UIDevice currentDevice].systemVersion.doubleValue >= 8.0)

ios 8以前的弹框

@interface RootViewController ()<UIAlertViewDelegate> 

@end
UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"登陆失败" message:@"请重新输入用户名和密码" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
      [alert show]; 
#pragma mark - UIAlertView Delegate Methods -
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
  if(buttonIndex == 0)
  {
    NSLog(@"点击取消按钮后,想要的操作,可以加此处");
  }
  else if(buttonIndex == 1)
  {
    NSLog(@"点击确定按钮后,想要的操作,可以加此处");
  }
}

ios8以后的弹框

      UIAlertController *_alertVC = [UIAlertController alertControllerWithTitle:@"登陆失败" message:@"请重新输入用户名和密码" preferredStyle:UIAlertControllerStyleAlert]; 

      //警告类型,红色字体 UIAlertActionStyleDestructive
//      UIAlertAction *_doAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDestructive handler:nil];
//      [_alertVC addAction:_doAction]; 

      UIAlertAction *_doAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action)
      {
        NSLog(@"点击确定按钮后,想要的操作,可以加此处");
      }];
      [_alertVC addAction:_doAction]; 

//      UIAlertAction *_cancleAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil];
//      [_alertVC addAction:_cancleAction]; 

      UIAlertAction *_cancleAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action)
      {
        NSLog(@"点击取消按钮后,想要的操作");
      }];
      [_alertVC addAction:_cancleAction]; 

      [self presentViewController:_alertVC animated:YES completion:nil];
//警告类型,红色字体 UIAlertActionStyleDestructive,如下图所示的效果

      UIAlertAction *_doAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDestructive handler:nil];

      [_alertVC addAction:_doAction];

如有疑问请留言或者到本站社区交流讨论,希望通过本文能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • Android实现类似iOS风格的对话框实例代码

    分享一个简单的常用的对话框类,按照国际惯例,先上图 布局简单,先上布局.一个标题,一个内容,两个按钮 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout an

  • IOS开发之手势响应事件优先级的实例详解

    IOS开发之手势响应事件优先级的实例详解 交互响应事件都是通过手势的操作完成的,如点击.或双击.或长按,这些交互都是在视图中完成的,但是不同的视图可能会有不同的交互,有时候就会出现交互响应事件冲突的情况.这时候就需要处理事件优先级,以便达到想要的效果. 示例场景:一个自定义模式视图view中,有一个列表视图table,同时有一个确定的按钮视图button:在view中有一个单击事件UITapGestureRecognizer,在table中点击每个cell也会有点击事件,同样的button中有个

  • iOS开发之TextField禁用粘贴、选择和全选功能

    众所周知,TextField默认情况下,双击会出现"Paste"等提示复制粘贴的快捷菜单,方便用户快速编辑文本,但很多情况下,我们并不希望用户能够粘贴文本[虽然这样不友好,但万一产品经理要这么实现呢?],那么我们可以这样做: 方法 自定义TextField 重写canPerformAction方法 class CustomTextField: UITextField { /// 是否只是用于显示(禁用粘贴.选择和全选功能) var displayOnly = false /// 禁用粘

  • JS解决IOS中拍照图片预览旋转90度BUG的问题

    上篇文章[Js利用Canvas实现图片压缩功能]中做了图片压缩上传,但是在IOS真机测试的时候,发现图片预览的时候自动逆时针旋转了90度.对于这个bug,我完全不知道问题出在哪里,接下来就是面向百度编程了.通过度娘找到了相关资料,解决方法记录在此.这个问题的具体因素其实我还是不清楚是为何导致的,只有IOS和部分三星手机会出现此bug. 绝大部分的安卓机并无此问题. 解决此问题需要引入一个第三方 JS 库: exif.js 下载地址:https://github.com/exif-js/exif-

  • ios微信浏览器返回不刷新问题完美解决方法

    开始用的表单提交,返回参数就丢失,换成url跳转,popstate监听 (注释部分)ios10测试始终有问题,继续搜,最后用pageshow,pagehide完美解决(另外说一句:珍爱生命,远离微信和ios) var wxback = { init :function(){ //隐藏微信分享按钮等 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { WeixinJSBridge.call('hid

  • IOS 开发之读取addressbook的实现实例

    IOS 开发之读取addressbook的实现实例 iphone读取addressbook: 1.添加addressbook.framework 2.在需要的源文件中     #import <AddressBook/AddressBook.h> #import <AddressBookUI/AddressBookUI.h> 3.开始粘代码: //get all people info from the address book ABAddressBookRef addressBo

  • IOS 中弹框的实现方法整理

    IOS 中弹框的实现方法整理 #define iOS8Later ([UIDevice currentDevice].systemVersion.doubleValue >= 8.0) ios 8以前的弹框 @interface RootViewController ()<UIAlertViewDelegate> @end UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"登陆失败" message:

  • Android中仿IOS提示框的实现方法

    前言 在Android开发中,我们有时需要实现类似IOS的对话框.今天我就来总结下,如何通过自定义的开发来实现类似的功能. 自定义Dialog 我们知道Android中最常用的对话框就是Dialog及其派生类.这次我们通过组合的方式来实现一个类似IOS对话框的效果.我们先来看一下布局效果,这个相信大家都能弄出来,在这里我就贴一下最后的效果图(注意:对话框的边缘是圆角的). 效果图如下: 我们看到,这个和IOS的对话框已经非常相似了,后面我们需要做的就是将其作为一个组件封装起来,实现AlertDi

  • IOS 中runtime使用方法整理

    IOS 中runtime使用方法整理 做iOS的朋友都知道或听说runtime,这个东西很像java的反射机制,但功能远胜于java的反射.通过runtime我们可以动态的向一个类中添加属性.成员变量.方法,以及对其进行读写访问. 新建两个类ClassOne和ClassTwo #import <Foundation/Foundation.h> @interface ClassOne : NSObject{ NSString *_publicVar1; NSString *_publicVar2

  • 关于ckeditor在bootstrap中modal中弹框无法输入的解决方法

    当在bootstrap的modal中使用ckeditor时,使用ckeditor中带弹框的功能时无法输入问题. 解决方法:在jquery和bootstrap加载之后引入fix的js,js内容: var $modalElement = this.$element; $(document).on('focusin.modal', function (e) { var $parent = $(e.target.parentNode); if ($modalElement[0] !== e.target

  • IOS swift3.0 下闭包语法整理

    IOS swift3.0 下闭包语法整理 一.闭包的概念 有oc基础的都知道,闭包其实是oc里面的block,语法格式不一样,但作用是一样的.主要是用于callBack(异步回调)或者两个类之间的通信.它的本质一个函数,一个可执行的代码块,只是这个函数是没有名字的,也就是匿名函数.你也可以把他看作如 int.float一样,是一种数据类型,一种可以作为参数传递的数据类型. 二.基本语法 1.闭包的声明 //定义一个求和闭包 //闭包类型:(Int,Int)->(Int) let add:(Int

  • iOS 原生sqlite3的使用方法

    本文介绍了iOS 原生sqlite3的使用方法,分享给大家,具体如下: SQLite? SQLit是一个开源.轻型嵌入式关系数据库,诞生于2000年5月 占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 能够支持Windows/Linux/Unix等等主流的操作系统 比起Mysql.PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快  SQL语句常用操作 增.删.改.查,CRUD,Create[新建], Retrieve[检索], Update[更新

  • 解决IOS开发空字符串的方法

    解决IOS开发空字符串的方法 实例代码: -(Boolean) isEmptyOrNull:(NSString *) str { if (!str) { // null object return true; }else if(str == Null){ return true; }else if([str isKindOfClass:[NSNull class]]){ return true; }else { NSString *trimedString = [str stringByTrim

  • 让JavaScript的Alert弹出框失效的方法禁止弹出警告框

    本文将介绍让JavaScript的Alert弹出框失效的方法,也就是禁止让JS弹出警告框. 因为现在都提倡绿色上网环境,弹出框难免会影响你的心情,所以通过以下代码可将Js弹出框屏蔽掉. <script LANGUAGE="JavaScript"> <!-- window.alert = function(str){ return ; } alert("不能弹出警示框");//--> </script> 实现思路是对"al

  • MySQL去重的方法整理

    MySQL去重的方法整理 [初级]有极少的重复行 使用distinct查出来,然后手动一行一行删除. [中级]按照单个字段的重复去重 例如:对id字段去重 使用方法:获取id的重复字段的值,利用相同id字段所在的行中,比较出数据不同的字段,删除 除了最小(或最大)的字段所在的该行之外的所有重复的行.一般使用主键来比较,因为主键的值一定是唯一值,绝对不相同. id name 1 a 1 b 2 c 2 a 3 c 结果: id name 1 a 2 a 操作: delete from a_tmp

  • js实现文本框选中的方法

    本文实例讲述了js实现文本框选中的方法.分享给大家供大家参考.具体如下: 这段javascript代码可解决文本框获得焦点,即使得文本框的内容被选中. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www

随机推荐