
ios
文章平均质量分 57
BoolBear
目前主攻Python领域!
展开
-
ios常见概念总结
事件传递机制和响应者链:总体来说,事件传递机制是从上到下,从父控件到子控件的,响应者链相反。事件传递从最上层的UIApplication--UIWindow--父容器-子容器这个流程来进行传递。这些从上到下的控件就是响应者,而这些响应者构成了响应者链。响应者自下而上,直到有touches...方法来响应.①.首先判断主窗口(keyWindou)自己是否能接受触摸事件②.判断触摸点是否在自己身上((UIView *)hitTest:(CGPoint)point withEvent:(UIEvent原创 2021-08-16 16:57:47 · 131 阅读 · 0 评论 -
tableView的contentSize设置
在scrollView的代理方法里面设置(就是一定要在tableView的DataSource的代理执行之后设置才有效,因为tableView的DataSource的代理方法会对contentSize进行自适应的操作)-(void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{ self.tableView.contentSize = self.customContentSize;}...原创 2020-06-04 15:26:23 · 386 阅读 · 0 评论 -
关于转换坐标系 convertRect方法使用总结
CGRect rect = [bViewconvertRect:aView.frame fromView:aView.superview]; A方法CGRect rect = [aView.superview convertRect:aView.frame toView:bView];B方法想获取aView以bView为参考坐标系的坐标,应用场景,比如想在aView下方展示一个选择弹窗,...原创 2020-01-11 16:47:19 · 1463 阅读 · 0 评论 -
大熊的swift学习笔记(一)
大熊的swift学习笔记(一)原创 2016-03-02 17:13:10 · 405 阅读 · 0 评论 -
大熊的swift学习笔记(二)
swift的数据字典原创 2016-03-03 11:13:25 · 431 阅读 · 0 评论 -
大熊的swift学习笔记(三)
swift里面方法的定义是func,常见的语言是function,里面有个比较特殊的地方是当你想通过形参改变实参的话,可以使用inout和&来实现,额,暂时觉得这个好像用处不大,使用这种方式的话,可得小心,耦合有点高。这种方式传的就是地址,不是拷贝了!举例说明: var a:int=1; func changeValue(inout # bb:int)原创 2016-03-03 17:07:15 · 347 阅读 · 0 评论 -
Swift教程17-淡化MVC,使用MVVM框架开发轻巧便于维护的iOS app
MVVM是微软提出一种移动开发框架,旨在针对传统的MVC框架,解决传统的MVC框架的控制器的臃肿问题.M:Model模型,也就是数据模型;比如一条微博,对应的所有字段合成一条微博整体,这个整体就是ModelV:View视图,只用来显示的视图,如 iOS的UIView,Cell;当然在 iOS中 Storyboard中,view总是和控制器关联,这并不是严转载 2016-03-04 10:46:58 · 2393 阅读 · 0 评论 -
每个Xcode开发者应该知道的七个使用技巧
工欲善其事,必先利其器。对一个iOS开发者来说,这就意味着对Xcode的熟练掌握程度。Xcode是一个学习起来有点难度的软件,下面的这些技巧或许可以显著的提高你的编程效率。1.快速打开快速打开(Open Quickly)命令在Xcode的File菜单中,当然,用快捷键Command+Shift+O会更方便一些。这个命令可以开启一个小窗格用来快速搜索浏览文件、类、算法以及函数等。转载 2016-03-04 13:35:21 · 451 阅读 · 1 评论 -
一个同行的mvvm详细讲解
下面这个地址是一个同行讲的mvvm,讲得非常详细,清晰,推荐!http://www.ios122.com/2015/10/mvvm_1/转载 2016-03-04 14:42:48 · 328 阅读 · 0 评论 -
自学Swift之打印输出
所有编程语言都有的函数打印输出:print() // 不换行输出println() // 换行输出 print 和 println 函数可以直接打印基本类型var num = 10println("hello " + (String)num) // 方式1: 其他类型同String输出的时候需要强转转载 2016-04-05 15:12:18 · 1877 阅读 · 0 评论 -
挺好的一篇总结文(等有空时看看)
http://www.cocoachina.com/industry/20140609/8732.html行走于Swift的世界中发布于:2014-06-09 09:49阅读数:13127Swift并不像我上一篇表达自己初步看法的文章里所说的那样,相对于objc来说有更好的学习曲线。Swift在漂亮的语法之后其实隐藏了很多细节和实现,而如果无法理解这些细转载 2016-04-05 15:44:39 · 509 阅读 · 0 评论 -
nil和Nil的区别
1、nil nil一般是指把一个对象置空,既完全是一个空对象,完全从内存中释放。 2、Nil Nil和nil基本没有任何区别,也可以说只要是可以使用nil的地方都可以使用Nil,反之亦然。但是作为程序猿,我们应该更加严谨一些。nil和Nil的区别在于,nil表示置空一个对象,二Nil表示置空一个类。转载 2016-07-05 16:49:57 · 2204 阅读 · 0 评论 -
通过Xcode自带LaunchScreen布局文件自定义启动动画
大晚上刷微博,刷到一篇转发自 里脊串 的博客 Tips:获取APP的Launch Image大致内容是:通过获取打包到 App 里的启动图,初始化一个 UIImageView 与屏幕同等大小再加载到 UIWindow 上来做启动延时,从而达到自定义启动动画的目的。代码里的各种 Key 没太看懂,放到工程里也没法显示效果。文中的意思是不要增加启动图的方式来适配,那我想了想 iOS 启动画转载 2016-07-09 11:41:22 · 2870 阅读 · 1 评论 -
UItableView的使用
import UIKitimport Foundationclass ViewController: UIViewController,UITableViewDataSource,UITableViewDelegate { let data =NSArray(objects: "a","b","c") overridefunc v原创 2016-07-31 21:43:47 · 267 阅读 · 0 评论 -
选中UITabletableView
import Foundationimport UIKitclass ViewController:UIViewController,UITableViewDataSource,UITableViewDelegate{ var dataTable:UITableView!; //数据表格原创 2016-08-07 23:09:09 · 325 阅读 · 4 评论 -
swift 开源项目
作为一门集百家之长的新语言,Swift拥有着苹果先天的生态优势,而其在GitHub上各种优秀的开源项目也层出不穷。本文作者@SwiftLanguage从2014年6月苹果发布Swift语言以来,便通过跟踪、归纳、汇总持续更新《Swift语言指南》半年有余。近日,他站在个人的角度,将2014年Swift开源项目做了一个甄别、筛选。“轮子”工具类SwiftyJSON:G转载 2016-12-01 11:40:28 · 501 阅读 · 0 评论 -
Swift 中?和!
Swift 语言使用 var 定义变量,但和别的语言不同,Swift 里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:12345var stringValue : String//error: variable 'stringValue' used before being initi转载 2017-01-10 17:12:08 · 217 阅读 · 0 评论 -
iOS - Swift String 字符串
iOS - Swift String 字符串本文目录前言1、字符串的输出2、字符串的创建3、字符串长度的计算4、字符串位置的获取5、字符串成员的引用(取字符)6、字符串的连接7、字符串的比较8、字符串的大小写转换9、字符串与数字的相互转换10、在字符串中查找子串的位置11、字符串子串的提取(取子串)12、字符串切割13、字符串的插入14、字符串的删除15、字转载 2017-02-06 10:13:03 · 2471 阅读 · 0 评论 -
Swift 网络请求数据与解析
一: Swift 网络数据请求与处理最常用第三方 又有时间出来装天才了,还是在学swift,从中又发现一些问题,这两天上网找博客看问题弄的真的心都累。博客一篇写出来,好多就直接照抄,就没有实质性的把问题解决了,只是在发表的博客数量上 + 1 !!真心没意思。。 看看在Swift中是在怎样请求数据,解析数据加载图片这些的,也使我们最基本最常见的用法了,先说说这几个三方库转载 2017-01-17 10:57:40 · 4878 阅读 · 0 评论 -
Swift - 按钮(UIButton)的用法
Swift - 按钮(UIButton)的用法2015-01-15发布:hangge阅读:473242016-09-24更新:文章代码现已升级到Swift31,按钮的创建(1)按钮有下面四种类型:UIButtonType.system:前面不带图标,默认文字颜色为蓝色,有触摸时的高亮效果UIButtonType.custom:定制按钮,前面不带图标,转载 2017-02-17 10:11:16 · 310 阅读 · 0 评论 -
Swift开发必备技巧:内存管理、weak和unowned
因为 Playground 本身会持有所有声明在其中的东西,因此本节中的示例代码需要在 Xcode 项目环境中运行。在 Playground 中可能无法得到正确的结果。不管在什么语言里,内存管理的内容都很重要,所以我打算花上比其他 tip 长一些的篇幅仔细地说说这块内容。Swift 是自动管理内存的,这也就是说,我们不再需要操心内存的申请和分配。当我们通过初始化创建一个对象时,Sw转载 2017-02-18 09:22:52 · 5257 阅读 · 2 评论 -
Swift项目引入第三方库的方法
Swift项目引入第三方库的方法以下,将创建一个Swift项目,然后引入3个库:Snappy 简化autolayout代码的库Alamofire HTTP网络库,AFNetworking作者写的SDWebImage 图片加载,objc项目,通过头文件bridge方式供swift使用其中,前两个是Swift的库,SDWebImage是Objc的库。源代码见:htt转载 2017-02-14 10:23:24 · 1024 阅读 · 0 评论 -
理解UIButton的imageEdgeInsets和titleEdgeInsets
理解UIButton的imageEdgeInsets和titleEdgeInsets时间 2016-04-10 00:00:00 intMax'Blog原文 http://blog.intmaxdev.com/2016/04/10/uibutton-edgeinsets/主题 UIButtonUIButton在日常开发中经常用到,也经常需要做一些定制,这转载 2017-02-14 10:41:32 · 414 阅读 · 0 评论 -
iOS开发 Swift添加CocoaPods依赖库管理
iOS开发 Swift添加CocoaPods依赖库管理听语音|浏览:24|更新:2017-01-16 11:43|标签:IOS 12345分步阅读 CocoaPods的作用是巨大的,它不仅可以管理OC库,也包含Swift库。为Swift工程添加Cocoa转载 2017-03-10 13:05:50 · 527 阅读 · 0 评论 -
外部参数名
Swift开发经验——外部参数名一、什么是外部参数名?浅显地说,外部参数名就是在调用一个方法时要在方法的参数前面加上一个特定的名字,目的是便于阅读代码,提高维护效率。 二、在最新的Xcode中,外部参数名的性质与用法如下性质:函数可同时有局部名称(内部使用)和外部名称(调用函数时使用),方法的参数也类似,不过方法和函数的局部名称和外部名称的默认行为是不一转载 2017-03-16 17:41:09 · 894 阅读 · 0 评论 -
观察者模式 swift
观察者模式 - Observer在观察者模式里,一个对象在状态变化的时候会通知另一个对象。参与者并不需要知道其他对象的具体是干什么的 - 这是一种降低耦合度的设计。这个设计模式常用于在某个属性改变的时候通知关注该属性的对象。常见的使用方法是观察者注册监听,然后再状态改变的时候,所有观察者们都会收到通知。在 MVC 里,观察者模式意味着需要允许 Model 对象和 View 对象进行交流,而不能有直转载 2017-03-17 11:55:33 · 656 阅读 · 0 评论 -
修改xcode快捷键
之前在用 Eclipse 写 Java 的时候,有几个常用的快捷键,比如删除当前行,在当前行下面插入空行,向上 / 下移动当前行等等,到了 Xcode 里怎么也找不到这些快捷键,一直觉得 Xcode 自带的快捷键不够强大,直到今天才知道不借助第三方的插件,在 Xcode 下完全也可以实现这些功能,下面就说一下如何来做。首先找到 Xcode 中的自带的配置文件/Applications/Xc转载 2017-01-10 17:22:42 · 1734 阅读 · 0 评论 -
xcode查找中文
Tips:使用Xcode查找项目中的中文字符串项目刚启动的时候 我们一般为了快速开发 会在使用字符串的时候直接选择硬编码到代码中 比如1self.lblTime.text = @"1分钟前";但是之后 如果有国际化的需求的话 我们又会改成这样1self.lblTime.text转载 2016-11-30 16:01:01 · 948 阅读 · 0 评论 -
UICollectionView 基础全面解析
在iOS开发中经常会用到UICollectionView,和UITableView同样即成UIScrollView 但是操作起来比UITableVIew要麻烦一些 ,有些地方需要注意,一下是UICollectionView基础详解。//// ViewController.m// Collection#import "ViewCon转载 2017-05-26 10:37:54 · 177 阅读 · 0 评论 -
为UICollectionViewFlowLayout添加maximumInteritemSpacing
UICollectionViewFlowLayout是苹果为我们实现的一个布局,它有两个属性可以设置cell之间的间距:minimumLineSpacing 设置最小行间距,minimumInteritemSpacing 设置同一列中间隔的cell最小间距。为什么是最小,而不是固定的间距呢?因为 FlowLayout 的实现是两端对齐,同时保持一列中的cell间距相等。像这样的:转载 2017-05-26 09:59:08 · 3364 阅读 · 0 评论 -
自定义UITableViewCell(registerNib: 与 registerClass: 的区别)
自定义UITableViewCell大致有两类方法: 使用nib 1、xib中指定cell的Class为自定义cell类型(注意不是设置File's Owner的class) 2、调用 tableView 的 registerNib:forCellReuseIdentifier:方法向数据源注册cell [objc] view转载 2017-05-25 17:55:20 · 237 阅读 · 0 评论 -
NSLog
NSLog使用格式如下:NSLog(@"Hello World");NSLog(@"the word is:%@",string);NSLog(@"a=%d,y=%d",10,20);不能这样写:int i = 123;NSLog(@"%@",i);因为i不是对象,%@需要输出的是对象,改正后:int i = 123;NSLog(@"%d",转载 2017-05-25 10:44:19 · 222 阅读 · 0 评论 -
oc中关于pch文件
pch 可以用来存储共享信息,比如设备屏幕的宽度,高度。版本号等等 公用信息Xcode 老版本会自动为我们创建pch文件,新版本开始不自动创建了,如果需要使用可以自己手动创建创建完成后可以在里面定义常量此处以屏幕尺寸为例如下代码如下:复制代码代码如下://获取屏幕 宽度、高度#define SCREEN_FRAME (转载 2017-05-25 10:43:08 · 635 阅读 · 0 评论 -
iOS开发——UI组件(个人整理)
最近把iOS里的UI组件重新整理了一遍,简单来看一下常用的组件以及它们的实现。其实现在这些组件都可以通过Storyboard很快的生成,只是要向这些组件能够变得生动起来并且赋予它们更具生命力的事件,还是需要一番功夫的。UIButton这儿有一篇教程,挺全的,可以参考下:http://www.cnblogs.com/chen1987lei/archive/2011/09/09/217转载 2017-05-24 17:33:35 · 900 阅读 · 0 评论 -
使用OC加载图片的两种方式及其区别
在iOS中加载图片的方式有多种,通过OC的方式主要有imageName:和imageWithContentsOfFile:两种。这两种方式如何使用,以及他们之间的区别是什么呢?下面通过两个小示例来详细讲解。一、imageNamed:和imageWithContentsOfFile:的使用 1、imageNamed: 新建一个工程,将准备好的图片拖入项目中Assets.xcasset转载 2017-05-22 16:58:53 · 6914 阅读 · 0 评论 -
UICollectionView
概述UICollectionView是从iOS6开始引入使用的,目前应用非常广泛,很牛逼!老外的博客也是这么说的(传送门)## 与UITableView的初步比较UITableView应该是大家最熟悉的控件了,UICollectionView的使用与之类似,但又有所区别,如下介绍。相同点:1.都是通过datasource和delegate驱动的(dataso转载 2017-05-24 17:57:49 · 182 阅读 · 0 评论 -
设置UIImage的渲染模式:UIImage.renderingMode
设置UIImage的渲染模式:UIImage.renderingMode着色(Tint Color)是iOS7界面中的一个.设置UIImage的渲染模式:UIImage.renderingMode重大改变,你可以设置一个UIImage在渲染时是否使用当前视图的Tint Color。UIImage新增了一个只读属性:renderingMode,对应的还有一个新增方法:imageWithRenderi转载 2017-05-22 10:30:11 · 335 阅读 · 0 评论 -
Objective-C中的instancetype和id区别
一、什么是instancetypeinstancetype是clang 3.5开始,clang提供的一个关键字,表示某个方法返回的未知类型的Objective-C对象。我们都知道未知类型的的对象可以用id关键字表示,那为什么还会再有一个instancetype呢?二、关联返回类型(related result types)根据Cocoa的命名规则,满足下述规则的方法:1、类方法中,以alloc或转载 2017-05-19 15:15:25 · 558 阅读 · 0 评论 -
ios中关于delegate(委托)的使用心得
从开始从事OC工作到现在大概1年多了,从当初接触oc的"协议"的不明白,到现在代码中随处可见的委托,协议,其中感悟颇多。首先,大家应该都明白的是委托是协议的一种,顾名思义,就是委托他人帮自己去做什么事。也就是当自己做什么事情不方便的时候,就可以建立一个委托,这样就可以委托他人帮自己去实现什么方法。其次,我简单的总结了一下自己用到的委托的作用有两个,一个是传值,一个是传事件。转载 2017-05-19 14:36:30 · 465 阅读 · 0 评论 -
Objective-C #define 用法解析
Objective-C : #define 用法解析在 C 语言中,预处理代码 (Preprocessor) 是非常强大的工具,能让你的代码变得更加易读和易改。利用预处理代码,你可以重新定义代码的一部分,使得你的代码更适合你的风格。预处理代码 (Preprocessor) 在代码编译之前被提前处理。预处理代码均由一个井号 (#) 打头。1. 关于 #define#def转载 2017-05-19 10:59:38 · 731 阅读 · 0 评论