自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 iOS 延迟执行的方法

直接上代码:两种方法有一些底层区别,后续有时间补给大家。// 第一种[self performSelector:@selector(yourFunction) withObject:nil afterDelay:1.0];// 第二种dispatch_after(dispatch_time(DISPATCH_TIME_NOW,(int64_t)1*NSEC_PER_SEC), dispatch_get_main_queue(), ^{ //此处写执行代码 });

2022-05-09 18:53:37 798

原创 iOS UITextField使用方法

UITextField继承于UIControl,具备UIControl的相关特性和方法。UITextField是用于接受用户输入的控件,可以通过代码和xib、storyboard添加创建,具有相应的代理方法:- (void)viewDidLoad { [super viewDidLoad]; self.accountTextF.delegate = self; [self.accountTextF addTarget:self action:@selector(textCh

2022-05-08 13:36:03 444

原创 iOS NSLog使用技巧

开发调试时经常需要print一些信息做调试,当打印信息的地方多了之后设备上这些输出内容会在很大程度上影响设备性能,可以用宏来控制这些调试信息的输出。#ifdef __OBJC__ #ifdef DEBUG#define JSLog(fmt,...) NSLog((@"%s [Line %d] "fmt),__PRETTY_FUNCTION__,__LINE__,##__VA_ARGS__)#else#define JSLog(...)#endif#endif不同类型的一些打印方式

2022-05-04 13:48:24 1100

原创 iOS-UI之UIPickerView的用法以及联动崩溃的解决办法

先看一下UIPickerView样式:整体结构可以分为有几列columns数据,每列有多少行rows数据。如果是显示1列以上的情况,数据结构为1个数组+这个数组中有N个子数组的结构。和Tableview一样,使用UIPickerView需要遵守该控件的代理协议:<UIPickerViewDelegate>和<UIPickerViewDataSource>具体方法代码如下:#pragma mark - pickerview delegate、datasourc

2022-04-28 18:53:02 2279

原创 iOS自动布局代码实现NSLayout

1.首先需要设置view的属性:translatesAutoresizingMaskIntoConstraints设置为NO。因为会和Autoresizing冲突,不设置会报错。2.约束为NSLayoutConstraint类,创建一个约束对象,通过[constraintWithItem:7个参数]这个方法初始化约束对象。3.初始化中7个参数说明: 3-1:constraintWithItem:当前设置约束的对象自己。 3-2:attribute:当前设置约束...

2022-04-28 16:43:57 539

原创 iOS NSNotification通知的使用介绍

直接上代码 // 获取通知对象 NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; /* 注册监听, 1>Observer参数:是哪个对象要监听 2>selector参数:监听的对象收到通知后执行哪个方法 3>name参数:监听通知的名称,明确监听哪个类型名称的通知,可以自定义通知名称。(如果不写,则会监听发出通知对象的所有通

2022-04-26 11:37:28 686

原创 iOS--UITableView用法

UITableView的部分属性: //注册UITableView dataSource代理,需遵守<UITableViewDataSource> 协议 self.tableview.dataSource = self; //注册UITableView delegate代理,需遵守<UITableViewDelegate> 协议 self.tableview.delegate = self; //设置UITableView的行高,这里是统一

2022-04-21 11:54:34 1857

原创 iOS--UIScrollView用法

UIScrollView继承于UIView,是苹果封装的一个很常用的框架。UIScrollView主要是用来展示超过固定尺寸View的内容,可以再UIScrollView中操作上下左右滑动,两个手指放大和缩小功能。使用范围包括轮播图等,例如微信聊天列表用的是UITableview继承于UIScrollview,在固定的手机屏幕区域内滑动查看更多内容。下面就介绍一下UIScrollView具体的使用方法:创建UIScrollView的方法: UIScrollView *scrollview =

2022-04-21 10:44:18 3327

原创 iOS--状态栏的调整控制方法

在不同的需求场景中,我们会遇到把状态栏字体颜色显示为深色或者浅色,也可能会遇到需要隐藏状态栏的情况,下面就是对状态栏的一些基本操作,注意,代码是写到viewcontroller中哦。//设置状态栏的颜色-(UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleDefault;}//设置是否显示状态栏,return YES就会隐藏状态栏-(BOOL)prefersStatusBarHidden{ re

2022-04-18 21:19:54 810

原创 iOS--xib的加载过程

第一步:根据路径,搜索对应的xib文件(在根目录会生成加密的nib文件)。第二步:系统加载创建xib中的每个对象时,会根据所属类进行创建,然后根据自定义设置的属性进行赋值,并把该控件加载到父视图中。第三步:系统按照第二步的顺序加载完xib内的每个控件,返回一个数组类型对象。获取xib代码如下: //xib的文件名 NSString *xib = @"AppView"; //根据文件名查找,返回一个数组(因为一个xib内可以创建多个UIView或子类控件)

2022-04-18 17:02:09 1531

原创 iOS--UIImageView使用方法

UIImageView继承于UIView,是专门用来展示图片的控件。UIImageView的创建方法:- (instancetype)initWithImage:(nullable UIImage *)image;- (instancetype)initWithImage:(nullable UIImage *)image highlightedImage:(nullable UIImage *)highlightedImageUIImageView的部分属性://UIImageVi

2022-04-18 10:21:48 1112

原创 iOS--改变视图控件大小和坐标方法和动画

话不说多,直接上代码: //fram.size修改控件的位置大小(大小是以左上角为坐标点放大或缩小) _myButton.frame = CGRectMake(10, 10, 300, 300); //bounds.size修改控件的大小(以中心点放大或缩小,xy永远是0) _myButton.bounds = CGRectMake(0, 0, 500, 500); //center可以根据控件中心位置修改控件整体位置 _myButton.center

2022-04-17 14:57:56 979

原创 iOS--UIButton的用法说明

一句话介绍UIButton:就是手机屏幕按钮。废话不多说,稍微有一些基础的直接看代码,让你几分钟学会用UIButton: //创建Button,默认UIButtonTypeCustom样式 UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; //以下是不同的几种系同样式 typedef enum { UIButtonTypeCustom = 0,// 自定义样式,无风格

2022-04-17 11:37:50 815

原创 Object-C中NSMutableString的用法详解

NSMutableString继承与NSString,对NSString进行了扩展,使得生成的字符串对象可以修改。NSMutableString的创建:NSMutableString *string = [NSMutableString string];不可以用以下方式创建:NSMutableString *string = @"cannot create a new obj";因为,左边指针类型是可变字符串类型,而右边是NSString类型。当对象string调用NSMutable

2022-04-15 22:18:56 375

原创 Object-C中单例的特性和实现

一句话介绍单例:整个程序中,无论什么时候无论在哪个类中创建一个对象,创建时取到的对象永远是同一个对象。单例的特性:1.由于在不同位置创建的对象返回的都是同一个对象,因此,单例模式可以作为整个程序的一个共享对象,任何时候任何模块都可以操作访问该单例对象的属性。2.有人说,宏定义也可以全局共享使用。但是单例还有一个重要的特性,就是在程序运行过程中,可以根据实际需求修改单例对象的属性,而宏定义一旦定义后,整个程序运行过程中是无法修改的。单例的实现思路:Object-C中创建一个对象的时候会调用

2022-04-15 21:47:45 326

原创 Object-C中关于NSString的解释

NSString是Object-C中Fundationg框架中封装好的专门处理字符串数据,非常重要且使用频率超高的一个基础类。NSString的创建方式: NSString *firstString = @"Justin"; //第一种方式 NSString *thirdString = [NSString new]; //第二种方式 NSString *forthString = [NSString string]; //第三种方式 NSString *seco

2022-04-15 10:44:17 1290

原创 Object-C中protocol协议的简单介绍

一句话简单介绍protocol的作用:专门用来声明一些方法,某类遵守了这个协议,相当于拥有了协议中这些所有的方法的声明。创建方式:Xcold中新建OC文件,选择protocol类型,输入协议名称,点击创建,只创建一个.h文件。语法样式:@protocol sampleProtocol <NSObject>@required-(void)showFirstFunction;-(void)showSecondFunction;@optional-(void)execu

2022-04-15 09:06:02 395

原创 Object-C中的category的用法

当一个类的方法和实现过于臃肿时或想新增更多原有的类的方法,可以根据实际需求创建一个或多个category(分类)文件,其目的是方便管理和维护代码,为已有的类进行扩展方法。创建category的方法:Xcode中新建文件,选择Object-C file,file type选择category,Class选择要写那个类的分类,然后点击创建。创建完成后显示以下语法样式:@interface NSObject (test)@endcategory的局限:1.category只可

2022-04-14 14:26:49 280

原创 Object-C中@synthesize简单介绍

@synthesize通常写在.m文件中的@implementation中。用来自动生成属性的geter/seter方法。原理:@synthesize 成员属性名称 会自动生成一个带下划线的成员变量,自动生成geter和seter方法,但是,seter和geter方法中只会给自动生成的代下划线的成员变量,不会给自身属性赋值。因此,写@synthesize的时候,后边写上:@synthesize people = _people;这样就会给属性赋值了。当自己写了geter和seter方法后,如果不声.

2022-04-14 13:24:16 728

原创 Object-C中SEL方法介绍

SEL全程selector选择器,SEL为系统经过typdef定义,声明时不用加*,SEL是一个类,OC的方法都属于这个类型,方法代码存放在内存中的代码段中。OC方法存储在代码的方式:1.先创建一个SEL对象。2.把方法信息存储给SEL这个对象。3.把这个生成的SEL对象作为类对象属性,存储在类对象所在的代码段中。4.多个SEL方法的对象,以类似数组的方式存放在类对象代码段中。OC方法调用的原理:1.获取该方法的SEL对象,SEL *slelector = @selector(方

2022-04-14 13:04:27 452

原创 Object-C中@property的说明和使用方法

property

2022-04-13 15:35:04 548

原创 Object-C中单个对象内存泄露问题

内存泄露

2022-04-13 14:50:36 230

原创 Object-C之初始化init构造方法

当一个类执行new方法时,背后是先执行alloc方法,在执行init方法,然后返回一个已经初始化完成的该类的对象。下面简单介绍一下init的基础内容:一、init执行的目的:1.init执行是初始化对象的方法,同时给属性赋默认值。基本类型(int float double等)会初始化为0。C指针类型,会初始化为NULL,OC指针会初始化为nil。2.init方法可以重写。重写init方法时,先调用[super init],执行父类初始化操作,父类初始化中包含了初始化isa指针等操作。由于内存

2022-04-13 10:33:23 676

原创 Object-C中NSObject指针和id指针的用法和区别

NSObject和id都属于万能指针,都可以指向任何对象。以下简单介绍一下不用用法和区别:一、NSObject类型指针由于NSObject是一切类的根类,因此,NSObject类没有其它创建对象的一些方法和属性,因此,编译器在编译时,NSObject类型指针指向的对象调用其对象方法和属性时会报错。可以用强转换来表明属于哪种类型,具体格式为:NSObject *obj = XXX; [(类名 *)obj 方法1];若“方法1”是obj对象的方法,则会执行该方法。二、id类型指针id可以指向任何

2022-04-13 10:33:04 450

原创 Object-C之手动内存管理

Object-C之手动内存管理简单介绍

2022-04-13 09:32:54 1401

TOM汤姆猫开发demo素材

TOM汤姆猫开发demo素材

2022-04-17

空空如也

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

TA关注的人

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