首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【IOS开发基础系列】UIAlertController专题

要说明一点,苹果官方现在并不提倡在iOS 8中使用UIAlertView,取而代之的是UIAlertController。下面我们就来介绍UIAlertController的使用方法。...是使用对话框(alert)还是使用上拉菜单(action sheet),就取决于在创建控制器时,您是如何设置首选样式的。...Observer模式定义对象间的一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。我们可以在构造代码块中添加如下的代码片段来实现。     ...假定我们正在监听UIApplicationDidEnterBackgroundNotification通知消息,我们可以在observer中释放任何显示出来的视图控制器。...若不及时移除上一个实例监听,便会添加两次监听,但是键盘通知回调时,由于上一实例被释放了,便会在IOS8.0上报找不到对象实例的错误。

60630
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Objective C (iOS) for Qt C++ Developers(iOS开发,Qt开发人员需要了解什么?)

    在c++中没有根对象和Qt QObject仅用于一些对象,Objective C有强制性的根对象NSObject ....Objective C属性类似于Qt中的Q_PROPERTY,这意味着您能够使用好obj.var = foo语法在代码内部(obj setVar:foo)消息称为(好吧. .消息发送)。...你能想象Objective C托付作为一组插槽。托付对象的一个托付方法被对象调用通知某些事情已经发生。...每一个视图控制器管理视图(还记得MVC吗?)。导航视图之间通过演变(UIStoryboardSegue)发生。 您能够通过源视图控制器的prepareForSegue方法在视图控制器之间移动数据。...在得到由OS特定事件发生时调用每一个视图控制器类似viewWillAppear等方法。

    96010

    唐巧的iOS技术博客选摘

    《objc非主流代码技巧》:看开源代码时,总会看到一些大神级别的代码,给人眼前一亮的感觉,多数都是被淡忘的C语言语法,作者在文章中总结了objc写码中遇到的各类非主流代码技巧和一些妙用。...《刨根问底Objective-C Runtime(1)- Self & Super》:本文通过分析clang重写的Objective-C源码,从而解释Objective-C中的self和super在编译器层面分别是如何处理的...当被观察对象的某个属性发生更改时,观察者对象会获得通知。...另外 SpriteKit 中的 SKNode 也是继承自 UIResponder 类。因此 UIKit 中的视图、控件、视图控制器,以及我们自定义的视图及视图控制器都有响应事件的能力。...《轻松学习 Objective-C 消息转发》:作者在文章中通过一个小例子来讲解什么是消息转发,以及如何消息转发,希望看完这篇文章时大家会彻底的明白 OC 的消息转发机制。

    3.3K60

    成为一名优秀 Swift 开发人员的 10 个小技巧

    在编写 iOS 代码时,有一些关键点可以让我们的代码更具可读性、高效和可维护。...使用标记 从 Objective-C 开始,我就一直很喜欢标记。当控制器有成百上千行代码时,标记就显得很重要了。使用标签来分割和管理代码非常重要,可以在代码中快速导航。...使用扩展并合理使用它们来创建公共库 我很喜欢 Swift 扩展。在使用 Objective-C 时,我总是不情愿地使用继承。当然这并不总是错误的,正确的使用子类也不会出错。...9.使用通知 通知中心是在组件之间分发消息的好工具。...在开发文档中,通知是在控制器与模型或服务之间实施通信可同步模式的正确方法,我在项目中经常使用 Notification Center,基本上实现了观察者模式,并让应用程序带有更多响应式的元素。

    2.3K40

    (转)iOS开发之UICollectionViewController系列(一) :Ready CollectionViewController

    UIContentContainer 是iOS8之后添加的新的协议,也是和Size Class相关的协议。该协议中的方法可以帮助你适配视图控制器上的内容,比如内容尺寸和位置等。...当创建自定义视图控制器或者展示控制器时,你可以重写默认的实现方法来调整你视图控制器的内容。例如,你可以使用该方法来调整子视图控制器的大小或位置。...当你初始化视图控制器时,你可以使用initWithCollectionViewLayout:方法来指定集合视图想要使用的布局方式。...3.在代码中实现相应的代理,和TableView非常类似 (1) 返回Section个数的方法 Objective-C - (NSInteger)numberOfSectionsInCollectionView...:(UICollectionView *)collectionView { return 1; } (2) 返回每个Section中Cell个数的方法 Objective-C - (NSInteger

    5.5K40

    iOS开发学习路线

    个人学习方法分享 浅谈iOS进阶路线 [如何优雅的使用Mac进行开发]稍后更新 本文阅读建议 1.一定要辩证的看待本文. 2.本文主要是本人对iOS开发经验中总结的知识点 3.本文所有观点仅代表本人...3.有空时将排行榜上的应用下载排名靠前的应用,去欣赏并分析主流app的界面,功能实现,在拿到设计图时,去考虑界面的合理性,功能怎么实现最符合用户的操作习惯。...尚未入门 如何判断自己是否入门 是否了解Mac 是否了解Xcode 是否了解Objective-C 是否会使用UI控件. 如果上面的都不了解,那说明你还没有入门,请从iOS学习路线开始学习....Objective-C 介绍 概念 编译原理 程序启动原理 App组成 Info.plist .pch 打开程序 执行main函数 执行UIApplicationMain函数 初始化UIApplication...通知视图控制器 UITabbarController选择视图控制器 UIImagePickerController相册 UIImage图片 Xcode的使用 基础操作 状态栏 偏好设置 Xcode Source

    1.9K60

    重回iOS应用开发

    ,很微妙的感觉;比方我现在是在架构师的位置上,但在iOS的技能上,却没有充当架构师的能力,如何平衡现实和期望,着实让人纠结的一种状态,重新捡起来,以稍微高一些的视角去定位,还是比之前有了更多的收获 ,尽管由于项目人力配备不齐...iOS原生技术,其实选择Objective-C还是Swift来作为开发语言,确实是拿不准,毕竟苹果官方教程主推的还是Swift,但通过同iOS开发多年经验的同学交流后发现,使用Objective-C作为开发语言的项目...,居然不在少数,同事经验中也擅长Objective-C的偏多,所以就选择Objective-C吧。...二、如何进行UI模块跳转与管理 1、直接跳转: #模态跳转:一个普通的视图控制器一般只有模态跳转的功能,这个方法是所有视图控制器对象都可以用的。...这些组件框架主要出发点是在面对大型应用项目开发时,项目组成员更好的进行协作开发,能遵循固定的代码框架,实现高质量的输出。

    44220

    试用Xcode构建iOS PDF阅读器

    在本博客中,我们将首先探讨整合构建iOS PDF阅读器所需的步骤。...以下几个部分介绍了所需的要求、安装包的结构,以及如何使用ComPDFKit PDF SDK在Objective-C中创建iOS PDF阅读器 所需环境开发使用ComPDFKit PDF SDK的程序需要以下开发环境...在本博客中,我们使用Xcode14.0.1来演示示例图片目前暂不支持在苹果Silicon系列上运行模拟器对于早期版本的Xcode(如Xcode 13),默认情况下可能会打开Bitcode选项,因此需要关闭才能进行运行...guiderelease_note - 版本发布相关的信息legal.txt** - 法律相关的信息图片使用Objective-C创建iOS预览App这一部分将通过逐步说明,帮助您快速入门使用ComPDFKit...PDF SDK以在Objective-C中制作iOS应用程序。

    48530

    Android开发之Activity的创建跳转及传值

    说道Android中的Activity,如果你做过iOS开发的话,Activity类似于iOS中的ViewController(视图控制器)。在应用中能看到的东西都是放在活动中的。...:《我的iOS开发系列博文》和《我的Objective-C系列文章》。...Intent与iOS开发中的NavigationController(导航控制器)极为相似,不过又有所不同。...NavigationController是一个“栈”形式的容器,控制器可以通过push或者pop操作进行"入栈"和"出栈",这个入栈和出栈的操作也就是视图控制器进行切换的操作。...在iOS也是这样,不过是通过Application对象打开某些协议如tel://拨号协议等来调用系统功能。在安卓系统中也可以通过Intent对象来做这些操作。

    3.2K100

    2019最新iOS面试题及答案

    我觉得最好也最简单的一个列子就是tableView中图片的加载显示了。一个延时载,避免内存过高,一个异步加载,避免线程堵塞。 33. 是否在一个视图控制器中嵌入两个tableview控制器?...在iPhone应用中如何保存数据?...参看 iOS多线程编程之NSThread的使用其他多线程,在Cocoa的框架下,通知、Timer和异步函数等都有使用多线程,(待补充). 57....首先要了解什么是委托模式,委托模式在iOS中大量应用,其在设计模式中是适配器模式中的对象适配器,Objective-C中使用id类型指向一切对象,使委托模式更为简洁。...viewDidLoad 只有在视图控制器将其视图载入到内存之后才调用该方法,这是执行任何其他初始化操作的入口。

    2.3K20

    Objective-C 的运行时中最具争议的黑魔法:Method Swizzling

    例如:我们想要在一款 iOS app 中追踪每一个视图控制器被用户呈现了几次: 这可以通过在每个视图控制器的 viewDidAppear: 方法中添加追踪代码来实现,但这样会大量重复的样板代码。...如果你对 Objective-C 这方面的特性不是很了解的话,这是很值得推荐使用的一个特性,因为 method swizzling 可以通过交换 selector 来改变函数指针的引用。...在视图控制器的生命周期,响应事件,绘制视图或者 Foundation 框架的网络栈等方法中插入代码都是 method swizzling 能够为开发带来很好作用的例子。...到此我们已经知道为什么,应该在哪些地方使用 method swizzling,下面介绍如何使用 method swizzling: +load vs +initialize swizzling应该只在+...做好准备,在使用这个黑魔法中走得更远,不要让程序反而出现不可思议的行为。

    47010

    【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

    UIWindow 窗口; -- FKViewController 属性 : 代表视图控制器, 系统创建控制器时, 通常会加载对应的 xib 文件; -- 应用初始界面 : 在 OCAppDelegate...IOS 的 MVC 模式 - M(Model 模型) V (View 视图) C (Controller 控制器) IOS MVC 模式 :  -- Model 模型 : Model 一般式普通的 Objective...控制器 : 一般是 Objective - C 类, 一般都会继承 UIViewController 基类; 4....UIViewController 控制器 UIController 方法详解 : 主要用于处理视图加载, 显示等事件; -- viewDidLoad 方法 : 视图装载完成后, 自动回调该方法, 重写时注意先使用...-- 缩小 : 多个视图控制器在同一个窗口, 缩小界面可以同时查看所有的 视图控制器; -- 恢复 : 恢复原样查看; -- 放大 : 放大界面设计文件; 3.

    5K30

    简述OC语言

    消息传递 消息传递模型(Message Passing)是Objective-C语言的核心机制。在Objective-C中,没有方法调用这种说法,只有消息传递。...在C++或Java中调用某个类的方法,在Objective-C中是给该类发送一个消息。...动态性(Runtime) Objective-C 是面相运行时的语言,它会尽可能的把编译和链接时要执行的逻辑延迟到运行时。使用Runtime可以按需要把消息重定向给合适的对象,交换方法的实现等等。...强大的Method Swizzling(方法交叉使用) 在Objective-C中调用一个方法,其实是向一个对象发送消息,查找消息的唯一依据是selector的名字。...响应者链有以下特点: 1、响应者链通常是由视图(UIView)构成的; 2、一个视图的下一个响应者是它视图控制器(UIViewController)(如果有的话),然后再转给它的父视图(Super

    2.1K20

    iOS项目——项目开发环境搭建

    在开发项目之前,我们需要做一些准备工作,了解iOS扩展——Objective-C开发编程规范是进行开发的必备基础,学习iOS学习——Xcode9上传项目到GitHub是我们进行版本控制和代码管理的选择之一...这里除了设定我们的类名前缀之外,还额外标注了另外两项的设定方法: 一种是右下角的文本设定选项,在iOS扩展——Objective-C开发编程规范中我们提到过,iOS开发推荐使用空格进行缩进和分割,而不推荐使用...4 设置应用图标和启动图片 如何设置y8ingyong图标和启动图片我们在iOS学习——iOS项目Project 和 Targets配置详解中已经详细进行讲过了。...这些小格子主要分为四类: Notification:通知时的图标,类似有应用相关的推送消息时,有时候需要显示本应用的图标则会显示这个尺寸的 Spotlight:搜索小图标,当在Spotlight中输入应用名...一来通过启动图片设定了我们App应用在本次启动时以多大的界面进行展示信息,如果不设置启动界面,我们的App在打开后后会出现黑屏的显影导致应用无法正常使用。

    1.5K150

    AVKit框架详细解析(四) —— 基于AVKit 和 AVFoundation框架的视频流App的构建

    AVPlayer 是在 iOS 上播放视频的核心。 播放器对象可以启动和停止您的视频,更改其播放速率,甚至可以调高和调低音量。 将播放器视为能够一次管理一个媒体资产的播放的控制器对象。...每次收到通知时,您都会知道播放器已进入下一个视频。 要在 Swift 中使用 KVO——比在 Objective-C 中好得多——你需要保留对观察者的引用。...你的任务是: 1) 单击时取消视频静音。 2) 双击时在 1x 和 2x 速度之间切换。 您将从完成这些事情所需的实际方法开始。...2) 当有人双击播放器视图时,您可以添加一个侦听器。 这会在 2x 和 1x的播放速率之间切换。 3) 当有人单击播放器视图时,您可以添加一个侦听器。 这会切换视频的静音状态。...缺点是,在撰写本文时,iOS 14.5是可用的最新版本,VideoPlayer 的 SwiftUI 视图未显示画中画按钮。

    7K10

    Mac开发之 Cocoa 绑定 入门

    ). 2.为什么使用绑定在日常开发中,我们为了项目代码更易于维护,会将程序代码划分为独立模块或封装类,其中最基础的就是使用模型(M)-视图(V)-控制器(C)进行协调工作.然而,在某些情况下,编写相互分离的模型...-视图-控制器完全没有必要,特别是当控制器仅仅是在模型与视图之间传递信息时(比如一个UILabel需要显示文本来自数据模型的内容),为了解决这种情况,苹果公司在OSX中引入了Cocoa绑定....,绑定系统就会通知每个绑定到它的视图,告诉它们更新显示....运行一下,你会发现并没有预想的结果,如果你使用Objective-C来构建工程,就会发现运行的效果正确,这是因为Swift中默认是关闭了KVO的属性监听,我们只需要开启就可以了,在Person类中,给...,简化了开发步骤,同时也减少了Bug的可能. 3.2 绑定到控制器 在刚刚的例子中,我们将视图直接绑定在模型对象的属性上,跳过了控制器,这种情况对应简单的使用没有问题,但绑定还有更多的使用方式,也许你在签名的例子中已经注意到了

    1.9K20

    iOS开发之ReactiveCocoa下的MVVM(干货分享)

    在之前发表过一篇博文,名字叫做《iOS开发之浅谈MVVM的架构设计与团队协作》,大体上讲的就是使用Block回调的方式实现MVVM的。...在写上篇文章时也知道有ReactiveCocoa这个函数响应式编程的框架,并且有许多人用它来更好的实现MVVM。...1.引入相应的头文件 在工程中引入下方的头文件(建议在Pch文件中引入)就可以使用我们的ReactiveCocoa框架了 Objective-C #import #import 1 2#import #...在MVVM中引入RactiveCocoa 学以致用,最后来个简单的实例,来感受一下如何在MVVM中使用RactiveCocoa。当然今天RAC的应用是非常简单的,但原理就是这样的。...下方有VC层,在VC层中有两个视图控制器,一个是登录使用的视图控制器 (ViewContorller)另一个是登录成功后的视图控制器(LoginSuccessViewController)。

    5.9K30
    领券