自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 系统分享

#import "ViewController.h"#import @interfaceViewController ()@end@implementation ViewController- (void)touchesBegan:(NSSetUITouch *> *)touches withEvent

2017-02-23 18:04:08 392

原创 应用间跳转

#import "ViewController.h"@interface ViewController ()- (IBAction)SkipButton:(id)sender;@end@implementation ViewController- (IBAction)SkipButton:(id)sender { //1、获取到对应应用程序的URL NS

2017-02-23 14:35:27 398

原创 苹果公司开发者账号申请

苹果开发者账号一共有三种:企业开发者账号、公司开发者账号、个人开发者账号;其中公司开发者账号和个人开发者账号都是 $99美元一年,两者的区别是上线到APPStore上面的时候,公司开发者账号是以公司上传的,可供大家使用;个人开发者账号以个人上传,只能自己使用。企业开发者账号$299美元一年.1、点击进入苹果开发者申请界面2、点击进入判断有无申请过邓白氏账号3、已经申请过邓白氏选

2017-01-17 16:31:18 582

原创 iOS--UI UIMenuController的使用

1、有以下控件已经支持UIMenuController1. UITextFiled2. UIWebView3. UITextView2、让其他控件支持UIMenuControllera) 自定义控件b) 必须实现两个方法,方法如下:// 使控件成为第一响应者- (BOOL)canBecomeFirstResponder{    return YES;}/

2016-09-05 12:52:22 529

原创 ios开发 UI高级 图形上下文

DrawView.m#import "DrawView.h"@implementation DrawView- (void)drawRect:(CGRect)rect { // 获取上下文 CGContextRef ctx = UIGraphicsGetCurrentContext(); // 描述路径 // 第一根 UIBezierP

2016-09-03 20:54:44 447

原创 ios开发 UI高级 自定义表情键盘

ViewController.hViewController.m#import "ViewController.h"// 宏定义#define kScreenWidth [UIScreen mainScreen].bounds.size.width#define kScreenHeight [UIScreen mainScreen].bounds.size.height@in

2016-09-02 20:35:29 1329 3

原创 ios开发 富文本

富文本属性Attributes1、NSFontAttributeName: 设置字体字号2、NSForegroundColorAttributeName : 设置文字颜色3、NSKernAttributeName: 设置字符间距4、NSParagraphStyleAttributeName: 设置段落样式样式有:lineSpacing 行间距、paragraphSpacing

2016-09-01 21:06:57 400

原创 ios开发 UI高级 更新Ruby

更新Ruby:1、安装rvm(Ruby Version Manager)Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)在终端输入:curl -L get.rvm.io | bash -s stable安装完成显示如下界面:在终端输入: source ~/.bashrc  source ~/.bash_profile 查看

2016-08-31 19:37:35 823

原创 ios开发 UI高级 Cocoapods安装过程

CocoaPods是一个负责管理iOS项目中第三方开源库的工具,开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间。通过CocoaPods,我们可以将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成。CocoaPods的安装:一般mac系统已经默认安装好Ruby环境,可以在终端输入命令:ruby -v

2016-08-31 19:15:15 470

原创 ios开发 UI高级 间距设置

// cell之间的间隔-(void)setFrame:(CGRect)frame{       frame.origin.x= 5;    frame.size.width-= 2 * frame.origin.x;    frame.size.height-= 1; //分割线       [supersetFrame:frame];}

2016-08-30 20:51:36 618

原创 iOS开发 UI高级 图片放大缩小的实现

#import @interface ChangeScaleView : UIImageView@property(nonatomic,strong)UIScrollView *scrollView;@property(nonatomic,strong)UIImageView *scaleImageView;@end#import "ChangeScaleView.h"@implem

2016-08-28 20:41:35 909

原创 iOS开发 图文混编

图文混排3种方式    1.webView    优点:简单   缺点:交互比较差,性能差    2.textkit (使用方便)    oc ,coretext    3.coretext(C语言)    优点:性能好   缺点:使用相当复杂viewController.m#import "Vie

2016-08-27 21:06:06 687

原创 iOS开发 Block传值

根视图:#import "RootViewController.h"#import "ModalViewController.h"@interface RootViewController() { ModalViewController *modal;}@end@implementation RootViewController- (void)viewDidLoad

2016-08-27 08:52:06 574

原创 iOS开发 initWithFrame和initWithCoder的区别

initWithFrame:我们不使用xib的时候,需要对View的frame进行设置,所以需要调用initWithFrame方法进行初始化设置(这里以View为例)-(instancetype)initWithFrame:(CGRect)frame{     if ([superinitWithFrame:frame]) {         

2016-08-25 10:38:44 1002

原创 iOS开发 UI高级之代理实现传值

基本思路:创建一个实现传值协议,两个控制器都需实现协议,利用代理进行两端传值;根视图:#import "RootViewController.h"#import "ModalViewController.h"@interface RootViewController ()@property(nonatomic,strong)ModalViewController *moda

2016-08-24 21:15:26 362

原创 iOS开发-UI高级 选中按钮的实现方法总结

方法一:UIView的类目:-(void)setCenterX:(CGFloat)centerX{ CGPoint center = self.center; center.x = centerX; self.center = center;}-(void)setCenterY:(CGFloat)centerY{ CGPoint center = se

2016-08-21 10:56:20 1163

原创 iOS开发UI高级 设置UITextField的placeholder颜色的几种方法

修改UITextFiled的placeholder颜色的几种方法1、使用属性@property(nonatomic,strong)UITextField *nameField;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; NSMutableDictio

2016-08-20 18:47:53 465

原创 iOS开发UI高级 懒加载

懒加载核心:在get方法里面进行加载,当用到时再加载而且只加载一次;懒加载的好处:1、就算该数据被销毁,只要程序有需要用到时,还是可以加载出来2、使用懒加载代码可读性更高3、对象和对象之间的独立性更强注意:执行懒加载之前一定要先判断是否已经有了,如果没有再去进行实例化#import "ViewController.h"@interface ViewControlle

2016-08-19 15:21:31 537

原创 iOS开发 UI高级之CoreData

Core Data 简介·CoreData用于做数据持久化,适合大数据量的存储和查询注意:用于数据持久化一般有:CoreData、Sqlite数据库、属性列表、归档 四种方式·CoreData不是数据库,CoreData可以使用数据库、XML等方式来存储数据。·SQLite通过SQL语句操作数据,CoreData使用面向对象的方式操作数据。使用 CoreData操作数据,无需编写任

2016-08-18 15:56:52 422

原创 -[UIViewController _loadViewFromNibNamed:bundle:] loaded the "RecommendViewController" nib but the v

-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "RecommendViewController" nib but the view...一般出现该错误有以下几种原因:1、view里面的属性没有关联好2、view里面的nib文件找不到3、view和自身的File's Owner没有关联如果是前面两种错误建

2016-08-16 21:38:36 603

原创 iOS开发 UI高级 SQLite数据库

SQLite数据库介绍1、数据持久化· 数据持久化是通过文件将数据存储在磁盘上 · iOS下主要有四种数据持久化方式:(1) 属性列表 (2) 对象归档 (3)SQLite数据库 (4)CoreData2、数据库的相关概念a) 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库;数据库管理系统是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库

2016-08-16 13:46:40 427

原创 iOS开发 UI高级 标签栏和导航栏的设置

1、标签控制器的相关设置    // 设置正常状态下的属性字典    NSDictionary *normalDic = [NSDictionary dictionary];    normalDic = @{NSFontAttributeName:[UIFont systemFontOfSize:12],                  NSForegroundColorAtt

2016-08-15 19:40:57 2033

原创 ios开发-UI高级 HTTP协议

1、HTTP协议的概念· 全称“超文本传输协议”,浏览器和服务器之间的通信规则 ·HTTP协议永远都是客户端发起请求,服务器回送响应。2、响应包、请求包· 客户端发送一个HTTP请求,是向服务器提交了一个HTTP请求包 · 服务器收到请求之后,向客户端回应一个HTTP响应包3、HTTP请求常用方法· GET:是向服务器索取数据的一种请求方式,所有参数拼凑在URL后面,并且参

2016-08-10 21:06:12 341

原创 iOS开发-UI高级 Quartz 2D绘图

1、Quartz 2D是一个二维图形绘制引擎· Quartz 2DAPI可以实现许多功能,如基于路径的绘图、透明度、阴影、颜色管理、反锯齿、PDF文档生成和PDF元数据访问· Quartz 2DAPI是Core Graphics框架的一部分2、Core Graphics· Core Graphic框架是一组基于C的API,可以用于一切绘图操作· 因为UIKit依赖于Core G

2016-08-09 19:17:51 486

原创 ios-UI高级 GCD的相关设置

1、GCD(Grand Central Dispatch)可理解为:“牛逼的中心调度”·Apple提供的一套更底层、更高效的并发编程技术,纯C语言、基于Block ·支持同步或异步任务处理,串行、并行的处理队列,非系统调用的信号量机制,定时任务处理,进程、文件或网络的监听任务等优点·易用: GCD比之thread更简单易用。基于block的特性导致它能简单的在不同代 码作用域之间传递上

2016-08-08 20:58:31 322

原创 ios-UI高级 GCD队列组合成图片

#import "ViewController.h"@interface ViewController ()//这个imageView是storyBoard里面的@property (weak, nonatomic) IBOutletUIImageView *GruopImageView; //这两个是自定义的Image@

2016-08-05 09:14:03 554

原创 ios-UI高级 多线程的互斥解决

1、控制线程状态· 启动线程- (void)start;· 阻塞线程+ (void)sleepUntilDate:(NSDate *)date;- (void)sleepForTimeInterval:(NSTimeInterval *)interval;· 强制停止线程+ (void)exit;  注:一旦线程停止(死亡)了,就不能再次开启任务。

2016-08-04 10:06:30 506 1

原创 ios-UI高级 多线程部分内容总结

1、多线程概念多线程是指从软件或者硬件实现多个线程并发执行的技术,即同一时间可以执行多个线程.一个程序有且只有一个主线程,程序启动时创建(调用main来启动)主线程的生命周期是和应用程序绑定的,程序退出(结束)时,主线程也就停止了.2、多线程的原理a) 同一时间,cpu只能处理一条线程,只有一条线程在执行b) 多线程并发执行,其实是cpu快速的在多线程进行切换c) 因为cpu调

2016-08-03 20:31:52 316

原创 ios--UI高级用事件实现简单截图功能

ViewController.m@interface ViewController (){    MyTouchView *touchView;}@end@implementation ViewController- (void)viewDidLoad {    [superviewDidL

2016-08-03 10:21:43 407

原创 ios-UI高级 相册的相关处理和音乐播放AVFoundation框架的内容总结

1、相册和照片的处理a)iOS图像加载方式1. 相册——用户的相册资源,通过UIImagePickerController读取 2. 应用程序包——与应用程序源文件同一目录,可通过文件路径读取 3. 沙盒——沙盒目录即可以保存图片,也可以通过路径读取,读取方式和应用程序包的方式是一样的。4. 因特网——通过URL从网络上下载图像读取。2、图片加载本地加载:/

2016-08-01 18:39:44 520

原创 IOS-UI高级之深浅拷贝

1、深拷贝(mutableCopy)深拷贝也称内容拷贝就是增加一个指针并且申请一个新的内存,使这个增加的指针指向这个新的内存。即产生一个新的对象,mutableCopy返回的对象都是可变的2、浅拷贝(copy)浅拷贝也叫指针拷贝或者地址拷贝,即把一个指针拷贝一份指向另一个对象,没有产生新对象但是copy返回的对象是不可变的例子(NSString):NSS

2016-07-31 14:02:59 582

原创 IOS-UI高级 事件的响应和手势识别器

1、事件的传递从事件发生到其处理的对象,传递要经过特殊的一段过程,当屏幕接触的触摸时,ios将其打包到UIEvent对象中放入活动事件队列中。UIApplication对象从事件队列中取出最前面的事件分发,通常会给事件一个应用程序的主窗口(UIWindow)再由窗口对象发送事件给第一响应者处理。2、事件响应者链的基本概念响应者对象是一个能接收并处理事件的对象。UIRes

2016-07-31 10:03:50 445

原创 Ios-UI高级 触摸事件的相关总结

1、触摸事件类型a) 触摸事件b) 运动事件c) 远程控制事件2、触摸事件处理方法//当一个或多个手指触摸屏幕时-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event//当手指在屏幕上移动时-(void)touchesMoved:(NSSet *)touches withEvent:(UIEve

2016-07-30 20:20:54 364

原创 IOS-沙盒相关内容总结

1、沙盒的概念a) 沙盒是用来存放APP应用程序的单独封闭的文件夹b) 沙盒目录是用来存放App的本地文件c) 当前应用程序不能访问其他App应用的沙盒2、沙盒中有如下子目录a) Documents:存放应用程序中的重要数据文件和用户的数据文件 (如下载的文件)b) Library:缓存文件(在应用程序中,保存一些缓存文件或者偏好设置文件)c) Tmp:

2016-07-29 20:59:07 295

原创 iOS-从plist文件获取数据

1. 从文件中读取plist文件的路径    NSString *path = [[NSBundle mainBundle] pathForResource:@"more" ofType:@"plist"];    2. 初始化数据数组    _dataArray = [NSArray arrayWithContentsOfFile:path];1) 通过注册的方式,来

2016-07-28 13:29:52 8105

原创 iOS之KVO模式的相关内容

1. 复写一个方法,观察到事件的发生 - (void) observeValueForKeyPath:(NSString *)keyPath (观察的属性)                        ofObject:(id)object  (被观察者)            change:(NSDictionary *)change (值得变化)         

2016-07-27 19:24:07 295

原创 ios-Foundation框架

1、NSSet的相关内容a)  NSSet和数组一样是数据容器b)  NSSet和数组的区别:1) 数组是有序的 NSSet是无序的2)数组可以容纳重复对象 NSSet不能2、 创建方式:1) 普通方法创建   NSSet *set1 = [[NSSet alloc] initWithObjects: ..., nil];类方法创建   NSSet *set

2016-07-26 13:34:01 307

原创 导航栏的相关设置

1、设置导航栏标题的字体颜色    NSDictionary *dic = @{NSForegroundColorAttributeName:[UIColor whiteColor],                          NSFontAttributeName:[UIFont systemFontOfSize:16]};        [self.naviga

2016-07-25 21:05:37 474

原创 iOS-UI之UICollectionView must be initialized with a non-nil layout parameter'解决方式

出现错误:解决方式:用xib创建的集合视图#import "ViewController.h"#import "CollectionCell.h"@interface ViewController () @end@implementation ViewContro

2016-07-22 20:52:38 9339

原创 ios-单元格复用

1、创建单元格的几种方式a)  通过UITableViewCell固定格式设置,其属性是imageView, textLabel、detailLabel,但它们的样式固定,且通常来说不易改变它们的位置,不够灵活b)  通过UITableViewCell的contentView属性添加子视图c)  使用xib自定义子视图,开发较为迅速d) 子类化UITableView

2016-07-22 13:18:51 797

空空如也

空空如也

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

TA关注的人

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