自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

原创 Auto Layout中Stack View的使用

这是关于自动布局的第二篇文章。<< Auto Layout的使用上一篇文章介绍了如何使用Auto Layout,这一篇文章主要介绍堆栈视图(Stack View)。Stack View提供了一种轻松的方式来使用Auto Layout,不需要引入复杂的约束。单个堆栈视图定义用户界面的行或列,堆栈视图根据以下属性来排列其子视图。axis:定义Stack View的方向,水平方向或竖直方向,只适用于UIStackView。NSStackView中定义方向使用orientation属性。d.

2020-09-29 20:05:53 517

原创 Auto Layout的使用

这是关于自动布局的第一篇文章。>> Stack View的使用自动布局(Auto Layout)能够根据对视图的约束(Constraint),动态地计算视图层次结构中所有视图的大小和位置。基于约束的Auto Layout使我们能够搭建动态响应内部、外部变化的用户界面。外部变化包括用户改变窗口大小(OS X)、旋转设备(iOS)、在iPad上进入或离开分割视图(iOS)、不同屏幕尺寸,内部变化包括app显示内容长度变化、字体大小变化、对国际化的支持等。大部分的外部变化会在运行时发生,这.

2020-08-25 21:14:28 356

原创 在UIScrollView、UICollectionView和UITableView中添加UIRefreshControl实现下拉刷新

Apple在iOS 6中添加了UIRefreshControl,但只能在UITableViewController中使用,不能在UIScrollView和UICollectionView中使用。iOS 10 新特性从iOS 10开始,UIScrollView增加了一个refreshControl属性,用于把配置好的UIRefreshControl赋值给该属性,这样UIScrollView就有了下拉刷新功能。和之前在UITableViewController中使用一样,不需要设置UIRefreshCont

2020-07-01 21:27:37 637 1

原创 手势控制:点击、滑动、平移、捏合、旋转、长按、轻扫

手势识别器(Gesture Recognizer)用于识别触摸序列并触发响应事件。当手势识别器识别到一个手势或手势发生变化时,会触发响应事件。UIGestureRecognizer类作为抽象类,不能直接使用。只能使用UIGestureRecognizer的子类识别手势,每一个子类识别一个特定的手势。UIGestureRecognizer有以下几个子类:UITapGestureRecognize...

2020-03-21 09:52:45 2419

原创 UIAlertController的使用

当你的应用程序需要向用户呈现重要信息,或提示用户重要选择时,可以使用警告框(Alert View)和操作表(Action Sheet)。下图左侧部分是警告框,右侧部分是操作表。自iOS 8开始,Apple用继承自UIViewController的UIAlertController取代了UIAlertView和UIAlertSheet。警报控制器(UIAlertController)虽然有警告框...

2020-03-01 16:32:27 1035

原创 KVC和KVO学习笔记

在编程中,最常见的就是程序的流程取决于你所使用的各种变量和属性的值,根据变量和属性的值确定后面运行的代码,有时会检查对象是否已加入数组,或是否已被移除,因此,获取类中属性的变化是编程中重要部分。我们有多种方式获取对象的改变,如委托、通知等。如果需要观察多个属性的变化,为避免产生大量的代码,最好是使用键值观察(Key Value Observing,简称KVO),这也是Apple在自己的软件中大量...

2020-02-26 20:22:43 150

原创 委托、通知传值的用法与区别

低耦合性是良好程序的特性。低耦合性程序可读性和可维护性比较好。Cocoa中的委托、通知功能可以使低耦合性更易实现,下面结合demo说明如何使用委托、通知进行传值,及委托与通知的区别。1. 委托传值委托传值在反向传值中使用。使用委托可以让委托和委托对象之间的关系变得清晰,特别是在委托的方法必须实现时。委托传值步骤如下:1.1 在ChildViewController.h声明协议,协议内方法默...

2020-01-02 19:52:35 221 1

原创 NSURLSession的使用

这一篇文章不够全面,推荐查看我的另一篇文章:URLSession详解NSURLSession提供了一个可供通过网络下载内容的API,并且具有丰富的代理方法。在iOS中,NSURLSession支持在app未运行或挂起时进行后台下载。此外,NSURLSession原生的支持data、file、ftp、http和https URL方案,以及用户首选项中代理和socks网关。使用NSURLSes...

2019-12-17 21:37:41 406

原创 宏(#define)与常量(const)的使用

iOS开发中经常用到#define进行文本替换,const修饰数据类型。下面说一下他们的使用细节。#define宏一般#define放在程序开始,在#import之后,也可以放在其他任何位置,但是必须先定义后引用。预定义的名称和变量的行为模式不同,没有局部定义之类的说法。在一个方法内定义,就可以在这个方法之后的任何位置使用。定义如果需要两行,那么上一行的最后一个字符必须是反斜线符号\,用...

2019-12-17 21:25:02 306

原创 Segue几种类型(Show、Show Detail、Present modally、Present as Popover)的区别

本文不够全面,建议查看View Controller 转场这篇文章。在iOS中,segue的class为UIStoryboardSegue,用于storyboard中不同视图控制器间转场,即从一个视图控制器转场到另一个视图控制器。Segue的起点必须是一个view或者定义某些操作的对象,如:UIBarButtonItem、UIControl和UIGestureRecognizer。Segu...

2019-11-28 20:02:14 557

原创 使用偏好设置、属性列表、归档解档保存数据、恢复数据

数据持久化就是将文件保存到硬盘,以便下次运行时可以读取或永久保存。iOS提供了以下几种持久化方案:NSUserDefaults (偏好设置)property list 即Plist (属性列表)NSKeyedArchiver NSKeyedUnarchiver(归档、解档)text fileSQL databasesCore Data在这个demo中,我们将使用前面四种方法保存数...

2019-11-28 19:55:46 251

原创 iOS中定义属性时的atomic、nonatomic、copy、assign、strong、weak等几个特性的区别

iOS 编程中,定义属性中的特性有atomic、nonatomic、copy、assign、strong、weak等,一般格式如下:@property (nonatomic, strong) NSString *name; 下面详细解释一下他们的区别。atomic默认属性。当前进程进行到一半,其他线程来访问当前线程,可以保证先执行完毕当前线程。只是保证setter/getter 完...

2019-10-29 20:26:26 134

iOS.Animations.by.Tutorials.5th.epub

raywenderlich 1. View Animations 2. Auto Layout 3. Layer Animations 4. View Controller Transition Animations 5. Animations with UIViewPropertyAnimator 6. 3D Animations 7. Further Types of Animations

2019-06-26

OReilly.Python.for.Finance.2nd.Edition.2018.12

Python for Finance, 2nd Edition 包含azw3和epub两种格式。2018年12月最新版。

2019-03-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除