
iOS
文章平均质量分 62
-FIGHTING-
这个作者很懒,什么都没留下…
展开
-
多线程死锁问题
并发、串行、异步、同步的区别以及死锁原因原创 2022-10-08 14:01:50 · 659 阅读 · 0 评论 -
快速启动iOS模拟器
苹果在最新版的Xcode中精简了安装过程,直接将所有文件统一放在了/Applications/Xcode.app/ 目录中,这给懒人们提供了大好机会:利用建立一个alias,绕开Xcode,直接打开iOS模拟器。首先,在Finder中进入目录:“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/”选择“iOS Simulator.app”将其拖入原创 2021-03-02 14:40:59 · 464 阅读 · 0 评论 -
iOS14开发适配
1.cell的子View如果不添加contentView不会接收点击事件不显示所添加控件适配:将工程使用【cell addSubView:xxx】的方式,统统改掉。在修改的过程注意,有些可能是在自定义的cell中做的操作,有些可能是在控制器VC中做的操作,总而言之,使用UITableViewCell的地方,均要修改;另外需要注意的是,有些可能使用了cell.subViews的地方也需要修改,改为cell.contentView.subViews;还有就是使用【cell viewWith原创 2020-11-03 18:10:06 · 715 阅读 · 0 评论 -
Xcode 工程清理瘦身
1.~/Library/Developer/Xcode/DerivedData/这个文件夹中保存的是Xcode的缓存文件,曾经在Xcode跑过的所有项目的索引、build的信息等都会保存在这里。删除后在下次打开项目编译的时候将会重新生成。由于这里包含了大量已经没用的项目的信息又懒得去筛选,于是把整个文件夹删了。2.~/Library/Developer/Xcode/iOS DeviceSupport/每次把一个设备接入电脑进行真机调试之前,电脑会对设备建立索引,也在此文件夹下生成对该设备系统的支原创 2020-09-04 18:04:11 · 570 阅读 · 0 评论 -
APP Clips
今年的苹果WWDC苹果全球开发者大会(英文全称是“Worldwide Developers Conference”)于北京时间6月23日凌晨1点进行了全球直播,期间随着iOS 14的发布,苹果带来了官方的“小程序”APP Clips。今天就来给大家讲解一下这项“新技术”有什么特点。一、什么是APP Clips?我们都知道,2017年初,微信带着“小程序”的概念来了。如果你需要使用哪款APP,现在可以无需下载,只要在微信中扫一扫对应二维码,或者搜一搜即可使用,即刻拥有堪比原生APP的流畅程度,和堪比H原创 2020-08-31 15:24:30 · 1077 阅读 · 1 评论 -
WWDC2020:苹果官宣自研电脑芯!2年取代英特尔,一文看尽
万众瞩目,就在昨晚,北京时间凌晨1:00,苹果WWDC2020线上发布会如期举行!苹果WWDC大会又称作“开发者大会”,是众多“果粉”和科技爱好者一年一度的盛会。链接地址:好文推荐https://mp.weixin.qq.com/s/Zb0R5ybLznoWFiFuXOVUtQ...原创 2020-06-23 16:52:22 · 300 阅读 · 0 评论 -
ios 使用Safari浏览器跳转打开、唤醒app
常常使用Safari浏览器浏览网页点击url会唤醒该站点的手机版app须要在app的project中设置1、打开project中的myapp-Info.plist文件2、打开文件里新增URL TYPES的一项。详细例如以下图所看到的:3、在project中实现例如以下方法- (BOOL)application:(UIApplication*)application han...原创 2020-03-04 11:47:04 · 4286 阅读 · 0 评论 -
错误检查 字符串、数组、字典
/***** 错误检查 字符串、数组、字典*****/// 字符串是否为空#define kStringIsEmpty(str) ([str isEqualToString:@"null"] || [str isKindOfClass:[NSNull class]] || str == nil || [str length] < 1 ? YES : NO )#define Strin...原创 2020-02-29 22:33:39 · 217 阅读 · 0 评论 -
iOS组件化
组件化这个东西其实并不复杂,他就是种思路,本质上是一种 app 架构思路,说穿了很简单的,难在组件化改造的时候,真正写起代码会出现不少棘手的问题。组件化是一种 app 架构,他的发展也是沿着正常的技术发展脉络来的,也是为了以追求高复用,高可维护性的目的的代码封装,区别是组件化是对整个 app 的再次封装。组件化研究组件化还是非常有必要的,这也是移动开发的一个趋势,最近就在网上找了些组件化的...原创 2019-12-31 18:16:27 · 425 阅读 · 0 评论 -
解决iOS的cell复用问题
常规配置如下 当超过tableView显示的范围的时候 后面显示的内容将会和前面重复。// 这样配置的话超过页面显示的内容会重复出现- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {// 定义唯一标识 static NSStr...原创 2019-11-13 15:16:32 · 3420 阅读 · 0 评论 -
iOS开发过程中遇到的问题总结
总结个人开发过程中遇到的问题,持续更新:1、官网的speakhere复制拷贝到自己的项目,提示CADebugPrintf.h file not found:select the Target, open the Build Settings pane, search for "Preprocessor Macros". Leave the fields blank (I've got转载 2015-05-30 23:03:11 · 875 阅读 · 0 评论 -
iObjective-C 学习第一篇 概述(关键字、Xcode快捷键、Objective-C编程语言排名)
一、简述概念Objective-C 语言是C语言的一个扩展集,它支持C语言的语法。但是它不仅仅只是语言的一种扩充,它是一门面向对象的语言,因此它同时也拥有高级语言的特性。 Objective-C编程语言排名2009年 排名322010年 排名82011年 排名62012年 排名42013年 排名32014年 排名32015年 排名 3区分职责Xc原创 2015-05-15 11:25:08 · 781 阅读 · 0 评论 -
根据输入的内容打印出菱形
/* 5 根据输入的内容打印出菱形 */+(void)print:(NSInteger)count blankString:(NSString*)blankString flagString:(NSString*)flagString/*{ NSMutableString * ptr = [[NSMutableString alloc]init]; for (NSInt原创 2015-07-26 19:21:24 · 1222 阅读 · 0 评论 -
将字符串按照单词逆序
/*2.将字符串按照单词逆序 输入一段字符串,已知字符串只由字母和空格构成,将字符串按照单词逆序 传入@"welcome to beijing" 返回 @"beijing to welcome" */+ (NSString *)reverseWordsInString:(NSString *)str//{// NSArray * arr= [str componentsSepa原创 2015-07-26 19:14:18 · 1698 阅读 · 0 评论 -
将C++的标识符转成OC的标识符
3.将C++的标识符转成OC的标识符 C++的标识符和OC一样由数字字母下划线组成,打头的不是数字。当标识符超过一个单词, C++采用全字母小写,单词间用下划线连接的书写规范,如: bei_jing OC采用除第一个单词外,其余单词首字母大写的书写规范,如:beiJing //传入C++标识符,返回OC标识符 */+ (NSString *)objcIdentifierFr原创 2015-07-26 19:14:43 · 906 阅读 · 0 评论 -
OC创建字典,数组
/* 4 创建大量字典 传入两个数组,key和obj,数组元素个数未知。创建大量字典,字典的个数与key和obj中元素较少的一个数组的元素个数相同。key中第i个元素和obj中第i个元素组成键值对。所有字典添加到一个可变数组中,返回数组的地址。 */+ (NSArray *)createDictionariesWithKeys:(NSArray *)key andObjs:(NSArra原创 2015-07-26 19:17:28 · 1422 阅读 · 0 评论 -
判断中间目录是否存在
/*1. 判断中间目录是否存在 比如 传入字符串 @"/home/baidu/oc.txt" 和 @"baidu" 返回:YES 传入字符串 @"/usr/baidu/oc.txt 和 @"baidu" 返回:NO */+ (BOOL)isPath:(NSString *)path includeMiddleDirectory:(NSString *)dir//{// NSAr原创 2015-07-26 19:11:26 · 939 阅读 · 0 评论 -
集合、可变集合
int main(int argc, const char * argv[]) { @autoreleasepool { // 4 NSArray -> NSSet NSArray * array = @[@"one",@"two",@"three"]; NSSet * set = [NSSet setWithArray:arr原创 2015-07-27 08:32:25 · 797 阅读 · 0 评论 -
JSON解析、XML解析
JSON解析1大括号代表字典2中括号(小括号)代表数组3冒号的左右两边分别为键和值(key:value)4数据和数据之间用逗号隔开我们在本机上创建一个file.xml,进行解析,并取出年龄35//JSON解析 本地读取student.xml文件 NSString *jstr=[NSString stringWithContentsOfFil原创 2015-07-27 10:39:09 · 594 阅读 · 0 评论 -
数组的应用OC
#import #import "Person.h"int main(int argc, const char * argv[]){ @autoreleasepool { NSArray * array = [[NSArray alloc]initWithObjects:@"one",@"two",@"three",ni原创 2015-07-27 08:23:38 · 519 阅读 · 0 评论 -
OC中可变字典和不可变字典
#import int main(int argc, const char * argv[]){ //不可改变字典,创建后不可改变 NSDictionary * dic = [[NSDictionary alloc]initWithObjectsAndKeys:@"jack",@"name",@"18",@"age", nil]; NSLog(@"%@",d原创 2015-07-27 08:28:55 · 2733 阅读 · 0 评论 -
OC可变数组的创建与简单应用
#import int main(int argc, const char * argv[]){ //NSMutableArray * array1 = [[NSMutableArray alloc]initWithObjects:@"one",@"two",@"three", nil]; NSArray * array = @[@"1",@"2",@"3"]; //原创 2015-07-27 08:26:03 · 2494 阅读 · 0 评论 -
OC当中野指针和内存泄露问题
定义一个Person类其实引用计数这个问题大家可以理解为租房子的问题, 如果有retain alloc 代表这个人租了这间大房子, 拿到了一把钥匙, 引用计数代表房子一共有的钥匙的数量, release代表退房归还钥匙 Person * p = [[Person alloc] init];//房东盖好了一间房子, 现在是房东一个人原创 2015-07-27 10:16:15 · 1500 阅读 · 0 评论 -
遍历数组、数组排序
#import int main(int argc, const char * argv[]){ //数组中建议存储同类型的数据元素 NSArray * array = @[@"one",@"two",@"three"]; for (int i = 0; i < array.count; i++) { NSString * str = arr原创 2015-07-27 08:25:21 · 1322 阅读 · 0 评论 -
OC和C对比学习
OC和C对比学习1、已有C的基础,如何快速入门OC?1)源文件对比思考&实现1: 1)在C语言中,我们遇到不同后缀的文件有哪些?.c .o .out .h扩展名.h 头文件.c c语言原文件.cpp .cc C++语言的原文件.m Objective-C的原文件.mm Objective-C++的原文件OC中常见的两种文件原创 2015-07-15 10:41:02 · 864 阅读 · 0 评论 -
面向对象编程
////////////////////////////////////////////////////////////////////////////////////////////面向对象编程面向对象的概念定义指一种程序设计的范型大幅度提高软件项目的成功率减少维护费提高可移植性和可靠性面向对象的三个主要特征封装性多态性继承性原创 2015-07-15 10:47:40 · 692 阅读 · 0 评论 -
NS前缀\OC中的注释\访问OC原文件、C原文件中的函数
/////////////////////////////////////////////////////////////////////////////////NS前缀NS来自于NeXTStep的一个软件 NeXT Software OC中不支持命名空间(namespace) NS是为了避免命名冲突而给的前缀 看到NS前缀就知道是Cocoa中的系统类的名称原创 2015-07-14 20:20:32 · 1110 阅读 · 0 评论 -
iOS小练习,创建对象,初始化成员变量,对象调用方法
初学OC,感觉OC特别有趣,写下来和大家一起分享,希望能帮助大家学习,今后会持续更新,希望大家坚持学习如今的互联网发展很快,尤其是无线互联,移动终端的发展正处于火热的发展时期希望大家把握这个好时机,赶上这个互联网发展的浪潮,实现自己的梦想今天建立了一个小工程 大家有不懂的同学可以提问,我有时间会给大家回答的,只能说是互相交流//// Car.h// day01-原创 2015-07-15 13:24:05 · 1339 阅读 · 0 评论 -
ios数据类型、函数面向对象
任何事物的出现都是为了解决之前出现的问题,或者更好的解决存在的问题。如果一个新的事物出现不具备这样的特点,这个事物就是毫无意义提出问题-学习方法C语言1、基本数据类型 int float double char2、if if else for while do while switch(逻辑)3、函数(方便修改逻辑错误,将逻辑分块处理)void function()原创 2015-07-15 12:39:52 · 731 阅读 · 0 评论 -
iphone 开发对象方法、重写description方法
main.m//// main.m// 01-第一个OC程序//// Created by Angel on 15-7-15.// Copyright (c) 2015年 . All rights reserved.////编辑字体大小command + <//编译运行快捷键 com + R#import #import "Iphone.h"//要使用类文件创建原创 2015-07-15 21:57:12 · 742 阅读 · 0 评论 -
ios开发设计电影院
Cinema.h 文件#import #import "Film.h"enum FilmRoom{ /**用来存储影厅号,下面依次代表1-7号影厅*/ FilmRoomWithOne = 1, FilmRoomWithTwo = 2, FilmRoomWithThree = 3, FilmRoomWithFour = 4, FilmRoomWi原创 2015-07-17 08:25:55 · 2618 阅读 · 0 评论 -
ios射击类游戏简单代码射击
ios射击类游戏简单代码射击之后会持续的更新,学习的同学请关注,共同学习main.c#import #import "Soldier.h"int main(int argc, const char * argv[]){ Soldier *s1 = [[Soldier alloc]init]; s1->_life = 100; s1->_name原创 2015-07-16 14:04:32 · 1767 阅读 · 0 评论 -
iOS类的合理设计,面向对象思想
每天更新的东西可能有重复的内容,当时每一部分的知识点是不同的,需要大家认真阅读这里介绍了iOS类的合理设计,面向对象思想main.m#import #import "Iphone.h"int main(int argc, const char * argv[]){ Iphone * phone = [Iphone new]; phone->_color =原创 2015-07-16 16:26:11 · 788 阅读 · 0 评论 -
ios设计一部WindowsPhone手机
ios设计一部WindowsPhone手机main.m#import #import "WindowsPhone.h"int main(int argc, const char * argv[]){ WindowsPhone * phone = [WindowsPhone new]; phone->_color = WindowsPhoneColorGolden;原创 2015-07-16 16:35:46 · 3431 阅读 · 0 评论 -
ios实现一个射击游戏,逻辑分析与对象的提取
逻辑的剥离是比较困难的从设计中去思考 相同的东西怎样处理 不同的东西怎样处理如何解决 如何提高 如何改进self 对象的指针地址苹果使用的是动态压缩 速度非常快创建多个对象根据给出功能需求,随着开发的深入把缺失的补进去我们应该把复杂的问题简单化,将问题一步步分析,将大的复杂的问题缩小化,然后将问题拆分成小的问题,对一个射击原创 2015-07-16 13:51:40 · 817 阅读 · 0 评论 -
设计一部iphone手机用面向对象的方法
main.m//编辑字体大小command + <//编译运行快捷键 com + R#import #import "Iphone.h"//要使用类文件创建对象//1.要使用#import 引入相关的.h文件//2.创建一个对象//3.对对象的成员变量进行赋值操作//#import的作用//1.能够引入相应的头文件,提供快捷代码提示//2.能够自动防止重复引入头文件原创 2015-07-16 16:20:55 · 713 阅读 · 0 评论 -
设计一个简单的电影类ios
/* 能够表述出海报内容 类名:Film 影片名字 内容 上映时间 展示图片 */main.m#import #import "Film.h"int main(int argc, const char * argv[]){ Film * film = [Film new]; NSLog(@"%@",film);原创 2015-07-16 16:31:12 · 768 阅读 · 0 评论 -
ios开发设计电影院
这里首先给出了大家一个大致的需求分析,在之后软件的开发过程中会随着需求的变化,将一些功能更加完善一些/* 习题8: 在我们的现实生活中我们要去电影院看电影,都会经历一个痛苦的过程, 那就是排队买票,如果我们能够将这一过程放到手机上用软件来完成,那会大大减少我们观看电影排队过程的痛苦,所以我们要将这一过程软件话。 需求分析: 1.要有影讯信息原创 2015-07-17 08:22:49 · 1081 阅读 · 0 评论 -
ios开发设计电影院
Film.h#import enum selectWatchFilmTime{ selectWatchFilmTimeMonday,//用来记录观看时间周一观看 selectWatchFilmTimeThesday,//用来记录观看时间周二观看 selectWatchFilmTimeWednesday,//用来记录观看时间周三观看 selectWatchF原创 2015-07-17 08:29:41 · 837 阅读 · 0 评论 -
ios开发设计电影院
Cinema.m实现#import "Cinema.h"@implementation Cinema-(id)init{ //调用父类构造方法 self = [super init]; //判断初始化是否成功 if(self != nil) { _name = nil;//用来存储电影的名称 _原创 2015-07-17 08:27:35 · 883 阅读 · 0 评论