自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一、图像基础概念与RGB-YUV

每个通道的位深越大,能够表示的颜色值就越大,比如现在高端电视说的10bit色 彩,即是每个通道用10bit表示,每个通道有1024种颜色。这里的8bit就是我们讲的位深。(1) 打包(packed)格式: 将每个像素点的Y、U、V分量交叉排列并以像素点为单元连续的存放在同一数组中,通常几个相邻的像素组成一个宏像素(macro-pixel)。像素是一个图片的基本单位,pix是英语单词picture的简写,加上英语单词“元素element”, 就得到了“pixel”,简称px,所以“像素”有“图像元素”之意。

2023-09-22 10:03:27 185

原创 在一段时间内防止某方法重复调用

刚刚小文成同学遇到了一个问题,快速点击cell的时候推出了好多个界面。哥哥在他的点击方法里面加上这2行 [[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(requstRootDataSourceforFileDircevory:) object:models.fi...

2018-04-23 18:09:29 4487

原创 如何获取NSString字符串第一个数字

昨天UAT提出需求在一个议案下有子议案的时候,子议案的标题应该是由父议案的 题号.序号 +子议案的标题 作为最终标题。本来是想拿到字符串然后逐个判断是不是数字,如果是数字就拿出来拼接。但是父议案的题号数字不一定是一位数,有可能是2位数,甚至是3位数,那么我拿到了父议案的标题如何截取前面的一个数字呢?根据字节那样截取肯定满足不了了,如果是根据顿号来拆分字符串,可题号之后不一定是顿号、也有可能会有空格...

2018-04-18 11:28:36 2309

原创 安装cocoapods设置pod的时候

前些天升级系统后cocoapods不可用了,各种度娘各种Stack Overflow老是报错都解决不了,干脆重装系统了。。。别骂我水哈!实在没辙了重装系统后重新开始安装cocoapods,直到设置pod的时候,估计公司的网速也有关,看着都是十几二十 K的,又或许是其他原因,好几次都看到好不容易到了百分之七八十,接着又设置失败了。。。昨天反复了一天都是这样的错误:[!] /usr/bin/git c...

2018-03-29 10:31:51 1788

原创 ipad横竖屏转屏的坑要注意

由于上手这个项目不久,接手的时候其他模块已经写的七七八八了,目前其他界面只支持横屏,而我的附件浏览却要横竖屏都支持。不怕,咱有这几个方法就so easy啦//ios6.0后 判断当前是否能够转屏- (BOOL)shouldAutorotate{ if (_curDataLookoverModel == DataLookoverModelRemark) { ...

2018-02-13 20:36:29 3279

原创 当前控制器ViewController如果是present出来的,那就不能push下一个界面。

前些天写的附件浏览文件的模块被其他同事对接,今天测试说点击他的那个界面的按钮查看不了文件。把bug丢给我了。。。大过年的哥哥还在撸~~~刚刚一看,原来他的控制器是present出来的,在cell被点击或者cell上的按钮被点击的时候想push出我的附件浏览控制器。。。当然怎么点都没有用啦。。。现在我用一个导航控制器包着我新建的附件浏览控制器,然后再present过去,瞬间柳暗花明又一村。。-(vo...

2018-02-13 20:07:40 5676

原创 KVO的坑-不移除监听会导致奔溃

最近上手的项目是公司7年前的代码了。。。2011年啥概念。。。时间紧任务重,要求在年前出新版。。。有一些复杂的功能被迫移植老代码。。。查看PDF文件的代码都是利用上下文画上的没咋注意 然后把相应文件的 release 等等 dealloc方法都干掉了。。然后鸽鸽就掉坑里了,我这边模拟器,真机测试都不奔溃。。。然后移交测试总说打开文件就奔溃???后来换了一个ipad ,居然这个ipad跑起来还真的查...

2018-02-12 19:41:13 4623

原创 KVO的简单使用

KVO: Key Value Observing (键值监听)作用:当某个对象的属性值发生改变的时候(用KVO监听)当创建了某个对象,想要监听它的属性值发生变化然后做出相应操作的时候,首先给它添加监听器 /* 作用:给对象绑定一个监听器(观察者) - Observer 观察者 - KeyPath 要监听的属性 - optio

2017-08-27 11:36:40 307

原创 KVC的使用

KVC: Key Value Coding(键值编码)KVC的作用有哪些?最常用于取值和赋值利用KVC进行简单赋值/** * 利用KVC进行简单赋值 */void test(){ HYRPerson *person = [[HYRPerson alloc] init]; // 常规赋值 /* person.name = @"张三

2017-08-27 11:26:23 374

原创 iOS修改transform形变也能够实现动画

之前的一篇文章提到UIView实现动画里面核心是修改frame,其实修改transform形变也能够实现动画- (IBAction)moveUp:(id)sender { //平移 [UIView animateWithDuration:0.5 animations:^{ //使用Make,它是相对于最原始的位置做的形变. //self.

2017-08-27 11:03:04 1202

原创 iOS利用UIView实现渐变动画

UIView本身有一个类方法 animateWithDuration 可以简单实现动画效果简单从平移、缩放、透明度三个方向,都是修改frame来实现平移效果的实现代码/** * 平移 */- (IBAction)translate { // 渐变动画 // 方式一 /* // 1. 开始动画 [UIView beginAnimations

2017-08-27 07:35:43 5318

原创 iOS开发之修改分页控制器UIPageControl的图片和大小以及圆点之间的距离

今天遇到这个需求,需要修改UIPageControl圆点之间的间距。查资料找到以下两种方法,其一是自定义继承UIPageControl的类,其二是使用runtime交换方法来修改。文笔不好直接代码记录法一:继承UIPageControl#import "HYRPageControl.h"#define kDotW 30 //圆点的宽度#define kMagrin 20 //圆点

2017-08-26 21:27:43 2558 3

原创 iOS开发之HTTP的请求头和响应头 以及常见的响应状态码

*************请求头**************请求头:包含了对客户端的环境描述、客户端请求信息等GET /minion.png HTTP/1.1   //包含了请求方法、请求资源路径、HTTP协议版本Host: 120.25.226.186:32812   //客户端想访问的服务器主机地址User-Agent: Mozilla/5.0  //客户端的类型,

2017-08-24 19:10:44 5723

原创 iOS开发之小文件

如果文件比较小,下载方式会比较多1》直接用NSData的+(id)dataWithContentsOfURL:(NSURL*)url;2》利用NSURLConnection发送一个HTTP请求去下载3》如果是下载图片,还可以利用SDWebImage框架**************我是一条分隔线**************法一、NSData的+(id)dataWi

2017-08-24 18:57:02 314

原创 第三十一、Java面向对象三大特征之多态

面向对象的三大特征:1. 封装2. 继承。3. 多态多态:      一个对象具备多种形态。(父类的引用类型变量指向了子类的对象、或者是接口的引用类型变量指向了接口实现类的对象)多态的前提:    必须存在继承或者实现 关系。    动物  a  = new   狗();//动物类abstract class Animal{ Str

2017-03-23 07:22:26 365

原创 第三十、Java面向对象之接口

一个类最多只能有一个直接的父类。但是有多个间接的父类。java是单继承。class Ye{ String name;}class Fu extends Ye{}//class Zi extends Fu{}class MyClass { public static void main(String[] args) { // System.out.p

2017-03-22 21:44:30 277

原创 第二十九、Java之值传递

需求1: 定义交换数值的功能函数,基本类型数据, 数组,实例对象, String。基本数据类型交换//需求1:定义一个函数交换两个基本类型变量的值。 class MyClass{//值交换 public static void changeValue(int a , int b){ int temp = a; a = b; b = temp; System.ou

2017-03-22 00:27:22 245

原创 第二十八、Java面向对象之抽象类

目前存在的问题:1. 动物类的shout方法描述的不正确。2. 没有强制要子类一定要重写shout方法。抽象类的应用场景:我们在描述一类事物的时候,发现该种事物确实存在着某种行为,但是这种行为目前是不具体的,那么我们可以抽取这种行为 的声明,但是不去实现该种行为,这时候这种行为我们称作为抽象的行为,我们就需要使用抽象类。抽象类的好处: 强制要求子类一定要实现指定的方法。

2017-03-21 23:39:38 431

原创 第二十七、Java之final关键字

final(最终、修饰符)  final关键字的用法:1. final关键字修饰一个基本类型的变量时,该变量不能重新赋值,第一次的值为最终的。2. fianl关键字修饰一个引用类型变量时,该变量不能重新指向新的对象。3. final关键字修饰一个函数的时候,该函数不能被重写。4. final关键字修饰一个类的时候,该类不能被继承。常量 的修饰符一般为: publ

2017-03-21 23:01:33 271

原创 第二十六、Java面向对象之instanceof 关键字

instanceof是什么?       1:属于比较运算符:       2:instanceof关键字:该关键字用来判断一个对象是否是指定类的对象。       3:使用格式:               对象  instanceof 类;                  该表达式是一个比较运算符,返回的结果是boolea类型  true|false    注意:使用

2017-03-18 18:17:38 332

原创 第二十五、Java面向对象之方法重写

目前的问题:父类的功能无法满足子类的需求。方法重写的前提: 必须要存在继承的关系。方法的重写: 子父类出了同名的函数,这个我们就称作为方法的重写。什么是时候要使用方法的重写:父类的功能无法满足子类的需求时。方法重写要注意的事项:1.方法重写时, 方法名与形参列表必须一致。2.方法重写时,子类的权限修饰符必须要大于或者等于父类的权限修饰符。3.方法重写时,子类

2017-03-18 17:47:24 483

原创 第二十四、Java面向对象三大特性之继承与super关键字

面向对象的三大特征:1. 封装2. 继承3. 多态.1、类和类之间的常见关系    1:既然继承是描述类和类之间的关系,就需要先来了解类和类之间的常见关系1.1  现实生活的整体与部分举例说明1:现实生活    1:学生   是人      2:狗     是动物    3:球队包含 球员整体与部分的关系,部分可以删除和增加    4:笔

2017-03-18 00:04:27 590

原创 第二十三、Java之组合has a关系

在现实生活中事物与事物之间是存在关系.球员---->球队  整体与部分关系   has a 关系  学生----->人    继承的关系      is a 关系//球员类class Player{ int num; //编码 String name; //构造函数 public Player(int num , String name){ th

2017-03-17 19:33:30 1255

原创 第二十二、Java之单例设计模式

单例设计模式:       保证一个类在内存中只有一个对象。模式:模式就是用来解决特定问题的固定的解决方案。模式的概念最早起源于建筑行业....建房子的步骤都是一样子:打地基-----> 浇柱子------->盖楼面--------->砌墙--------->封顶---->装修-----入住软件行业中23种设计模式:单例设计模式模板设计模式装饰者设计模式

2017-03-17 19:21:57 228

原创 第二十一、Java之main方法详解

主函数是静态的       public static void main(String[] args){                   }主函数是什么:          主函数是一个特殊的函数,作为程序的入口,可以被jvm识别。主函数的定义:          public : 公共的。代表该函数的访问权限是最大的。                 

2017-03-16 22:33:48 406

原创 第二十、Java之static自定义数组工具类

话说上一节提到可以用static来定义一些工具类,啥也不多说,直接撸上吧!/* 定义数组工具类 1:定义一个遍历数组的函数 2:定义一个求数组和的功能函数 1) 遍历 2) 两两相加 3:定义一个获取数组最大值的功能函数 4:定义一个获取数组最大值角标的功能函数 5:定义一个返回指定数在指定数组中包含的角标的功能函数 6:定义一个可以用于排序int数组的函数 1)

2017-03-16 21:50:12 1478

原创 第十九、Java面向对象之static

一、如果没有static会怎样?    1:定义Person类       1)姓名、年龄、国籍,说话行为       2)多个构造,重载形式体现    2:中国人的国籍都是确定的       1)国籍可以进行显示初始化class Person { String name; int age; String gender; String country = "CN

2017-03-16 21:43:26 278

原创 第十八、Java面向对象之this

需求: 使用java类描述一个动物。问题:存在同名的成员变量与局部变量时,在方法的内部访问的是局部变量(java 采取的是就近原则的机制访问的。)。this关键字:this关键字代表了所属函数的调用者对象。也就是this在指向一个对象,所指向的对象就是调用该函数的对象引用。this关键字作用:1. 如果存在同名成员变量与局部变量时,在方法内部默认是访问局部变量的数据,可以通

2017-03-16 20:40:52 300

原创 第十七、Java面向对象之构造函数与构造代码块

我们人出生的时候,有些人一出生之后再起名字的,但是有些人一旦出生就已经起好名字的。那么我们在java里面怎么在对象一旦创建就赋值呢?需求: 使用java类描述 一个婴儿, 一种婴儿一出生就具备了名字(白户),还有一种婴儿就是 出生之后才有名字 的(黑户)。构造函数的作用: 给对应的对象进行初始化。构造函数的定义的格式:修饰符  函数名(形式参数){函数体

2017-03-16 18:24:08 436

原创 第十六、Java之清除数组中指定的某元素

需求:           目前存在数组:int[] arr = {0,8,0,12,1,0,3,6,0} ,编写一个函数接收该数组,然后把该数组的0清空,然后返回一个不存在0元素的数组。步骤: 计算机新数组的长度。  原来的数组长度-0的个数import java.util.*;class MyClass { public static void main(

2017-03-15 18:38:05 13178

原创 第十五、Java面向对象三大特性之封装

面向对象三大特征:1. 封装2. 继承3  多态。需求:  使用java类描述百合网的会员。问题: 性别有问题??根本原因: 由于其他人可以直接操作sex属性。可以对sex属性进行了直接的赋值。封装:权限修饰符:权限修饰符就是控制变量可见范围的。public :  公共的。 public修饰的成员变量或者方法任何人都可以直接访问。priv

2017-03-15 18:24:16 404

原创 第十四、Java面向对象之匿名对象

1、匿名对象:      没有名字的实体,没有引用类型变量指向的对象称作为匿名对象。2、匿名对象的应用场景          1: 当对象对方法进行一次调用的时候,可以使用匿名对象对代码进行简化。               为什么只对方法,而不调用属性呢?因为匿名对象调用属性没意义。               如果对象要多成员进行多次调用,必须给对象起个名字。不能在使用

2017-03-15 18:04:17 296

原创 第十三、Java面向对象之内存分析

例一://汽车class Car { //汽车应该具备的属性 int num; //汽车具备的颜色 String color; //汽车跑的行为 public void run(){ System.out.println(num+"轮子的汽车跑起来啦"); }}public class CarDemo{ public static void main(String

2017-03-15 17:49:08 318

原创 第十二、Java的成员变量与局部变量的区别

成员变量与局部变量的区别:0、定义的位置上区别:成员变量:  定义在方法之外,类之内的变量局部变量:  定义在方法之内的变量1、应用范围的区别         成员变量在整个类内都有效             局部变量只在其声明的方法内有效2、生命周期的区别         成员变量: 它属于对象,它随着对象的创建而创建,随着对象的消失而消失    

2017-03-15 17:40:12 248

原创 第十一、Java的面向对象(一)

类与对象的概念对象:真实存在唯一的事物。类: 实际就是对某种类型事物的共性属性与行为的抽取。  抽象的概念....   车我们从小的时候就不断的接触很多的对象,我们的大脑就会把这些具备相同属性与行为的事物进行分类。在现实生活中就存在对象与类这两种事物。计算机是服务于人类,为了让计算机更加接近我们的生活,这时候就出现了面向对象的计算机语言。面向过程(C)        

2017-03-15 16:45:16 225

原创 第十、Java的二维数组

数组的特点:1. 数组只能存储同一种 数据类型的数据。2. 数组是会给存储到数组中 的元素分配一个索引值的,索引值从0开始,最大的索引值是length-1;3. 数组一旦初始化,长度固定。4. 数组中的元素与元素之间的内存地址是连续的。二维数组: 二维数组就是数组中的数组。烟一根    变量一盒     20根               一维数组一

2017-03-15 16:28:10 419

原创 第九、Java数组的常见操作(冒泡、选择排序、数组翻转)

一、求最值需求1:一个数组取出最大值 /*定义一个获取最大值的功能: 1、确定结果 :返回值类型 int 2、未知内容:要获取哪个数组的最大值没有确定,则是数组没有确定 思路: 1、定义一个变量,记录住数组的比较大的元素。 2、遍历整个数组,让数组的每一个元素都和该变量进行对比即可。 3、当变量遇到比它大的元素,则让该变量记录该元素的值,当循环结束时,最大值产生了

2017-03-15 16:12:30 531

原创 第八、Java的数组定义与内存分析

概念同一种类型数据的集合。其实数组就是一个容器。数组的好处可以自动给数组中的元素从0开始编号,方便操作这些元素。格式1:元素类型[] 数组名 = new元素类型[元素个数或数组长度];示例:int[] arr = new int[5];格式2:元素类型

2017-03-15 15:52:33 549

原创 第七、Java的函数与函数重载

1、函数的概述发现不断进行加法运算,为了提高代码的复用性,就把该功能独立封装成一段独立的小程序,当下次需要执行加法运算的时候,就可以直接调用这个段小程序即可,那么这种封装形形式的具体表现形式则称作函数。需求:把两个整数相加:public class FunctionDemo1{ public static void main(String[] args){ /* int

2017-03-15 15:28:54 419

原创 第六 Java循环结构之 do while 与for循环

三大循环的特点与使用场景三大循环有何区别??什么场景使用??其实三个循环是可以互相替换使用的,都可以实现程序的功能。但是哪一个更合适应用场景呢?那就先得了解每一个循环的特点了while循环 侧重于条件是否满足的情况,满足条件就执行循环体。do while循环 侧重于不管条件满足与否至少都会执行一次循环体。for循环 侧重于范围,从哪个点到哪个点之间的一个范围。

2017-03-15 14:57:16 1115

Swift Programming Language中文版,英文版

Swift Programming Language中文版,英文版

2015-01-11

空空如也

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

TA关注的人

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