NSPoint】的更多相关文章

本节要点:红色标记 需要记下来 1   NSRange typedef struct _NSRange {     NSUInteger location;     NSUInteger length;     } NSRange;NSMakeRange 的函数 NS_INLINEz是内联函数    typedef NSRange *NSRangePointer;    NS_INLINE NSRange NSMakeRange(NSUInteger loc, NSUInteger len) {…
前言 结构体,这个结构体用来表示事物的一个坐标点. typedef CGPoint NSPoint; struct CGPoint { CGFloat x; CGFloat y; }; typedef struct CGPoint CGPoint; 1.NSPoint 结构体变量的创建与调用 // NSPoint 结构体变量的创建与赋值 // 先定义变量,再赋值 NSPoint point1; point1.x = 6; point1.y = 1; // 定义时直接赋值 NSPoint poin…
前言 结构体,这个结构体用来表示事物的一个坐标点. public typealias NSPoint = CGPoint public struct CGPoint { public var x: CGFloat public var y: CGFloat public init() public init(x: CGFloat, y: CGFloat) } extension CGPoint { public static var zero: CGPoint { get } public in…
1.NSRange: typedef struct _NSRange { NSUInteger location; NSUInteger length; } NSRange; NSRange本身是系统自定义的一个结构体的变量名:这个结构体用来表示事物的一个范围,通常是字符串里的字符范围或者集合里的元素范围:location表示该范围的起始位置,length表示该范围内所含的元素个数:比如”I love objective-c”中的”obj”可以用location为7,length为3的范围来表示…
#import <Foundation/Foundation.h>   int main(int argc, const char * argv[]) {    @autoreleasepool {        // insert code here...       NSPoint p=NSMakePoint(10, 15);        //NSPoint其实就CGPoint        //这种方式比较常见        NSPoint p2=CGPointMake(10, 15)…
Objective-C中经常使用的结构体NSRange,NSPoint,NSSize(CGSize),NSRect 1   NSRange NSRange 的原型为 typedef struct _NSRange { NSUInteger location; NSUInteger length; } NSRange; NSMakeRange的函数 NS_INLINEz是内联函数 typedef NSRange *NSRangePointer; NS_INLINE NSRange NSMakeRa…
前言 结构体,这个结构体用来表示事物的一个坐标点. typedef CGPoint NSPoint; struct CGPoint { CGFloat x; CGFloat y; }; typedef struct CGPoint CGPoint; 1.NSPoint 结构体变量的创建与调用 // NSPoint 结构体变量的创建与赋值 // 先定义变量,再赋值 NSPoint point1; point1.x = 6; point1.y = 1; // 定义时直接赋值 NSPoint poin…
概要 Objective-C是一门面向对象的动态编程语言,主要用于编写iOS和Mac应用程序.关于Objective-C的编码规范,苹果和谷歌都已经有很好的总结: Apple Coding Guidelines for Cocoa Google Objective-C Style Guide 本文主要整合了对上述文档的翻译.作者自己的编程经验和其他的相关资料,为公司总结出一份通用的编码规范. 代码格式 使用空格而不是制表符Tab 不要在工程里使用Tab键,使用空格来进行缩进.在Xcode > P…
概述 我们前面的章节中就一直新建Cocoa Class,那么Cocoa到底是什么,它和我们前面以及后面要讲的内容到底有什么关系呢?Objective-C开发中经常用到NSObject,那么这个对象到底是谁?它为什么又出现在Objective-C中间呢?今天我们将揭开这层面纱,重点分析在IOS开发中一个重要的框架Foundation,今天的主要内容有: Foundation概述 常用结构体 日期 字符串 数组 字典 装箱和拆箱 反射 拷贝 文件操作 归档 Foundation概述 为什么前面说的内…
1.Objective-C之Foundation框架 概述 我们前面的章节中就一直新建Cocoa Class,那么Cocoa到底是什么,它和我们前面以及后面要讲的内容到底有什么关系呢?Objective-C开发中经常用到NSObject,那么这个对象到底是谁?它为什么又出现在Objective-C中间呢?今天我们将揭开这层面纱,重点分析在IOS开发中一个重要的框架Foundation,今天的主要内容有: Foundation概述 常用结构体 日期 字符串 数组 字典 装箱和拆箱 反射 拷贝 文件…
一.Foundation框架 概述 我们前面的章节中就一直新建Cocoa Class,那么Cocoa到底是什么,它和我们前面以及后面要讲的内容到底有什么关系呢?Objective-C开发中经常用到NSObject,那么这个对象到底是谁?它为什么又出现在Objective-C中间呢?今天我们将揭开这层面纱,重点分析在IOS开发中一个重要的框架Foundation,今天的主要内容有: Foundation 常用结构体 日期 字符串 数组 字典 装箱和拆箱 反射 拷贝 文件操作 归档 Foundati…
1.框架是由许多类.方法.函数.文档按照一定的逻辑组织起来的集合,以便使研发程序变的更容易 清除缓存,删除这个文件夹下的所有文件/Users/fanyafang/Library/Developer/Xcode/DerivedData 显示隐藏文件:defaults write com.apple.finder AppleShowAllFiles -bool true 隐藏隐藏文件:defaults write com.apple.finder AppleShowAllFiles -bool fa…
1, 从简单的例程来看基本语法: 下面的代码是通过OSX-Application-Command Line Tool生成的: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here... NSLog(@"Hello, World!"); NSLog(@"Hello, Objective-c&q…
//将NSData转化为NSString        NSString* str = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];//将NSString 转化为NSData (NSString.h)- (NSData *)dataUsingEncoding:(NSStringEncoding)encoding; //载一个字符串中删除一个字符或字符串[_display deleteCharacte…
Objective-C关键字和概念 @ 看到这个关键字,我们就应该想到,这是Object-C对C语言的扩展,例如@interface XXX. @interface 声明类 @implementation 实现类 @protocol 声明协议 @optional 与@protocol配合使用,说明协议中的某个或者某几个方法可以不实现 @required 与@protocol配合使用,说明协议中的某个方法或者某几个方法必须实现 @end 与@interface ,@implementation,@…
结构体  NSRange: 用来表示范围 创建 NSRange r1 = {2, 4} NSRange r2 = {.location = 2, .length = 4} NSRange r3 = NSMakeRange(2, 4) 查找某个字符串在str中的范围 NSString *str = @"i love oc"; NSRange range = [str rangeOfString:@"java"] NSLog(@"location = %ld,…
iOS学习(OC语言)知识点整理 一.OC中的字典 1)字典:是一个容器对象,元素是以键-值对(key-value)形式存放的,key和value是任意类型的对象,key是唯一的,value可以重复 2)OC中的字典有两种 1.不可变字典:NSDictionary,初始化后不能修改其内容 2.可变字典:NSMutableDictionary,初始化后可以修改其内容 二.NSDictionary 字典的操作 1)实例化方法创建字典对象 例如: NSDictionary *dict1=[[NSDic…
1.Foundation框架简述 在前面,我们创建一个类的时候,都会选择Cocoa Class.到底Cocoa Class是什么东西呢? Cocoa 不是一门编程语言,因为它可以运行在多种编程语言上,包含了众多子框架,其中最重要的要数“Foundation”和“UIKit”.前者是框架的基础,和界面无关,其中包含了大量常用的API:后者是基础的UI类库,以后我们在IOS开发中会经常用到. 其实所有的Mac OS X和IOS程序都是由大量的对象构成,而这些对象的根对象都是NSObject,NSOb…
一.键盘通知我们经常需要在键盘弹出或者隐藏的时候做一些特定的操作,因此需要监听键盘的状态 键盘状态改变的时候,系统会发出一些特定的通知UIKeyboardWillShowNotification // 键盘即将显示UIKeyboardDidShowNotification // 键盘显示完毕UIKeyboardWillHideNotification // 键盘即将隐藏UIKeyboardDidHideNotification // 键盘隐藏完毕UIKeyboardWillChangeFrame…
#pragma mark - 键盘通知回调方法 //  监听键盘的通知 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillChangeFrameNotification:) name:UIKeyboardWillChangeFrameNotification object:nil]; /* UIKeyboardAnimationCurveUserInfoKey = 7;  …
UITextView,UITextfield中有很多坑,网上的方法也很多,但是用过之后暂时没有发现一个好用.这里我给大家几组测试用例可以一试,为啥不好用. 限制10个字节,输入2个Emoj之后是8个字节(一个Emoj是4个字节),此时再输入一个中文,看看结果如何(中文的UTF8占3个字节) 限制5个字符,一个Emoj是2个字符,其他都是一个.此时输入两个Emoj,再输入中文,然后中文联想试试. 就目前的情况来说,看了很多资料,并没有一个通用的能限制字符数和字节数的封装.这里全面进行了总结,并进行…
1.NSNumber 数值类. 作用:实现基本数据类型与OC对象类型的相互转化. 1> NSNumber创建对象 // 初始化方法 NSNumber *num1 = [[NSNumber alloc] initWithInt:]; // 类方法 NSNumber *num2 = [NSNumber numberWithInteger:]; // 字变量 NSNumber *num3 = @; NSNumber字面量 // 常量: NSNumber *intNumber = @; NSNumber…
***********controller.m #import "HMViewController.h" #import "HMMessageModel.h" #import "HMMessageCell.h" #import "HMMessageFrameModel.h" @interface HMViewController ()<UITableViewDataSource,UITableViewDelegate,U…
常见的结构体 (NSPoint,CGPoint).(NSRange,CGRange).(NSSize,CGSize) 苹果官方推荐使用CG开头的结构体 NSRange是Foundation框架中常见的结构体它的定义如下: typedef struct _NSRange { // 范围的起始位置 NSUInteger location; // 范围的长度 NSUInteger length } NSUInteger的定义: typedef unsigned int NSInteger; typed…
Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框架中的数据类型,那么包含它的主头文件就可以了. 即#import<foundation/foundation.h> 补充:core foundation框架相对底层,里面的代码几乎都是c语言的,而foundation中是OC的. 二.常用的结构体介绍及简单使用 常用的结构体: (一)NSRang的…
原文:http://noark9.github.io/2013/12/28/cocoa-drawing-guide-study-part-1/ 简介 cocoa drawing由AppKit提供并且也兼容其他的模式:Quartz,OpenGL,Core Image,Core Video,Quartz Composer,PDF Kit,QuickTime 基于Quartz,所以AppKit提供了Quartz相关的功能 基于path的绘图 创建,加载,显示图片 布局和显示文本 创建,显示PDF 半透…
二.处理文本框与键盘之间的关系(当键盘弹出遮挡到文本框的时候进行调整) 原理: 首先要明白: 1,键盘隐藏的时候,键盘上边界紧贴屏幕最低端,键盘在屏幕正下方. 2:键盘弹起的时候,键盘下边界跟屏幕下边界重合,键盘出现在屏幕最下方. 3:系统自带的键盘高度是固定的216,iOS8之后第三方的键盘,比如百度键盘高度可以任意调整. 4:当键盘弹起时,有可能会遮挡到文本框,也有可能遮挡不到.当遮挡到的时候需要处理,没遮挡的时候取消处理. 5:实现处理:(1):需要判断键盘弹起之后frame的Y值与文本框…
结构体 NSRange/CGRange 用来表示一个元素在另一个元素中的范围,NSRange等价于CGRange 包含两个属性: NSUInteger location:表示一个元素在另一个元素中的位置 NSUInteger length:表示该元素的长度 若找不到指定的元素,将返回NSNotFound(整型-1) 常用函数 NSRange NSMakeRange(NSUInteger loc, NSUInteger len) 创建一个NSRange类型的变量,将其两个属性初始化为loc和len…
一.NSRange 在foundation/NSRange.h中对NSRange的定义 typedef struct _NSRange{ NSUInteger location; NSUInteger length; } NSRange; //typedef unsigned long NSUIntegr; 这个结构体用来表示事物的一个范围,通常是字符串里的字符范围或者集合里的元素范围 location表示该范围的起始位置 length表示该范围内所含的元素个数 三种方式创建一个NSRange变…
    简介: 本文整理自Apple文档<Coding Guidelines for Cocoa>.这份文档原意是给Cocoa框架.插件及公共API开发者提供一些编码指导,实质上相当于Apple内部的编码规范.在多人协作时,一份统一的代码规范大大减少开发者之间的沟通成本,极力推荐.    目录: 一.代码命名基础 二.方法 三.函数 四.Property及其他 五.缩写         一.代码命名基础 1.通用原则 1.1 清晰 尽量清晰又简洁,无法两全时清晰更重要 Code Comment…