自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue开发环境搭建

一、Vue开发环境搭建1.下载VSCode去下载2.下载node.js去下载查看是否安装成功node -vnpm -v安装淘宝镜像,在终端输入 :npm install -g cnpm --registry=https://registry.npm.taobao.org 如果返回版本号,代表安装成功。同样是通过查看版本号查看安装状态:cnpm -v注意,如果安装淘宝镜像,后面命令使用cnpm安装脚手架3安装vue-cli 脚手架,在终端输入 :sudo npm instal

2022-01-28 17:31:25 1384

原创 第四篇 fluter中为应用添加事件和导航

第四篇 fluter中为应用添加事件和导航一、添加事件1.需要声明一个收藏集合_saved2._buildRow中传入已经收藏的集合3.添加点击事件二、导航跳转1.导航栏由RandomWordsState管理2.添加MaterialPageRoute及其builder三.使用主题更改UI一、添加事件第三篇中我们做了一个滚动例表,在例表中,我们添加一个收藏按钮,点击收藏单词1.需要声明一个收藏集合_savedclass RandomWordsState extends State<Random

2021-11-25 11:25:43 470 1

原创 第三篇 fluter组件应用

第三篇 fluter组件应用一、有状态部件Stateful widget?1.StatefulWidget类2.State类3.在myApp调用RandomWords二、无限滚动ListView1.RandomWordsState类2.将myapp中的home交给RandomWordsState管理总结一、有状态部件Stateful widget?第二篇我们说到stateless widget是不可变的,这意味着他们的属性不能改变,所有值都是保持不变的Stateful widgets 持有的状态可

2021-11-24 09:57:32 2091

原创 第二篇 编写一个fluter应用

第二篇 编写一个fluter应用一、创建 Flutter app二、使用外部包(package)1.pubspec文件管理Flutter应用程序的assets(资源,如图片、package等)。 在pubspec.yaml中,将english_words(3.1.0或更高版本)添加到依赖项列表,如下面显示的行: english_words: ^3.1.0一、创建 Flutter app1.新建一个fluter项目,命名为startup_namer替换 lib/main.dart.删除lib / ma

2021-11-23 18:50:32 1175

原创 第一篇Mac上fluter开发环境配置

第一篇Mac上fluter开发环境配置前言一、安装Xcode二、安装Android studio1.下载并安装[下载android studio](https://developer.android.com/studio/index.html)2.配置Android Studio环境3.下载fluter插件创建模拟器三、fluter安装1.下载fluter2.配置永久环境变量二、使用步骤1.创建一个fluter应用2.体验热重载前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展

2021-11-23 15:08:30 1145

原创 iOS组件化开发流程

iOS组件化开发流程前期准备工作注册仓库账号(gitHub/gitLabel/码云)注册trunk创建组件模版在组件模版里编写自己的代码修改.specs文件push到仓库给组件打一个tag校验specs文件关联私有仓库或上传cocoapods前期准备工作组件化开发之前,我们先了解一下,什么是组件化,为什么要组件化开发举个很简单的例子,我们平时在开发的时候用的第三方库,我们直接pod下来就可以使用,跟项目是分开的独立模块,就可以理解为一个组件,为什么要组件化开发呢,当我们的项目越来越庞大的时候,各模块之

2021-11-23 09:37:44 2665

原创 通俗易懂的理解iOS中的6大设计原则

6大设计原则一、单一职责原则CALayer:动画和视图的显示。UIView:为CALa le r提供显示的内容,负责事件传递、事件响应。二、开闭原则对修改关闭,扩展开放,如category三、依赖倒置原则抽象不应该依赖于具体实现,实现可以依赖于抽象,如接口的封装,调用接口不关心内部的实现四、里氏替换原则父类可以被子类替换,如KVO,子类重写父类的set方法五、接口隔离原则如使用多个专门的协议、而不是一个庞大臃肿的协议UITableviewDelegateUITableViewDat

2021-11-23 08:46:52 517

原创 mac 10.15 cocopods的安装流程

mac 10.15 cocopods的安装流程cocopods安装依赖ruby,ruby依赖rvm,rvm依赖homebrew,所以要安装cocopods,需要倒序安装这些工具homebew的安装rvm的安装安装ruby安装 Cocoapodscocopods安装依赖ruby,ruby依赖rvm,rvm依赖homebrew,所以要安装cocopods,需要倒序安装这些工具homebew的安装官网地址:链接: https://brew.sh.rvm的安装curl -L get.rvm.io | b

2021-03-12 04:07:56 619 1

原创 iOS开发程序媛带你项目实战(第二篇搭建项目环境

iOS开发程序媛带你项目实战(第二篇搭建项目环境)前言适合人群环境搭建导入CocoaPods管理依赖库info.plist配置创建项目结构目录创建pch文件创建其他文件前言其实我写第一篇博客时的初衷时因为那段时间没多少活,在准备换工作,沉淀沉淀自己,也顺便帮助正在学习iOS开发的小伙伴们,但是后来由于换工作,加上工作比较忙的原因,所以一直忘记了更新,这两天稍微不忙点,跟一朋友聊天,说有粉丝等着...

2019-02-25 14:25:23 292

原创 iOS开发程序媛带你项目实战(第一篇创建项目)

这篇文章主要是是给零基础的小伙伴看的开发前的的准备工作    一个mac电脑肯定是必备的,appstore下载xcode开发工具,如果是学习的话这就够了,但是我们最终的目的,还是去公司找一个iOS开发的工作,所以我这里以企业应用做示例,所以得准备一个iphone手机,公司一般会给你开发者账号,但是有的创业公司刚起步,估计连账号都没有,得你自己申请了,这里我们先不讲账号的申请,有需要帮助的就...

2018-08-20 14:21:23 1114 2

原创 RunLoop本质

剖析RunLoop本质说到runloop首先得清楚runloop的概念数据结构 使用runloop要达到的一个效果就是有事做的时候做事,没事做的时候休息,事件循环机制 使用当中和面试经常会问起runloop与NSTimer的的关系或者NSTimer在runloop中使用有什么地方需要注意runloop与多线程的关系如何实现一个常驻线程什么是RunLoop ru...

2018-08-16 18:46:49 2596

原创 iOS用runtime实现归档解归档

好多人对runtime的使用方法应该还是懵的,现在我就举个例子我们在持久化的时候可能会选择归档解,加入现在我们有个Person类,需要对里面的name属性和age属性做归档,通常的做法如下@interface Person : NSObject&lt;NSCoding&gt;//需要归档的属性@property (nonatomic, strong)NSString       ...

2018-08-08 15:59:37 444

原创 coredata的入门使用方法

我们只需要在创建项目文件的时候勾选使用coreData的选项,系统就会帮我们创建一个包含CoreData的项目文件。然后在界面上就会出现下面的变化。我们点击添加属性按钮,就能在数据库中给数据模型添加属性。添加完数据库后我们进行下面操作就能将数据模型转为代码文件。做完上面操作之后我们就能对数据库模型进行操作了。我们在操作数据,对数据进行增删改查的时候,都需要用到C...

2018-08-03 15:50:33 379

转载 app审核被拒2.1解决方案

关于App Store的审核团队其实你有必要了解一下              这一点其实我觉得我们真的还是有必要了解一下的,比如说我听到的下面这些疑问:      1、App Store中国区的审核是在中国吗?      2、审核时间是不是和我们上班的时一样?      3、App Store的审核是不是都是人工审核?      4、审核团队肯定Very大,这次提交不通过...

2018-07-30 14:20:22 5528

原创 We found that your app is an in-house application

感觉苹果每年7月份八月份审核都特别严,这两天提交包又赶上了苹果严查,各种拒绝,我有一个应用是我们公司的教师端,其实教育类的一般也就是自己公司内部用,所以没有注册功能,注册都是后台注册的,测试的也是测试数据,给苹果审核的数据,不能带测试等明显的字眼,苹果拒了,说内部应用不适合在appstore上线,无奈又加了一个注册功能,但是可能因为审核人员的业务不熟悉,又给我拒了- Who is the ta...

2018-07-24 10:13:00 1330

原创 iOS单例模式以及多线程使用深入详解

说到单例和多线程我们先来看看这两个的概念一.多线程说起多线程不得不说一线什么是线程,说到线程,脑海里有浮出一个概念,那就是进程1.什么是进程进程官方概念是资源分配的基本单位,按照我自己的理解,简单来说就是计算机运行一个程序就是一个进程,因为这是一个比较抽象的概念,每个人的理解都不一样,但是意思却是那么个意思2.什么是线程线程是CPU独立运行和独立调度的基本单位,每个进程至少有一个线程,是进程的执行...

2018-06-07 18:41:24 340

原创 使用ALAssetsLibrary库上传照片模糊的解决方案

虽然在iOS9以后ALAssetsLibrary已经弃用了,该用PhotoKit代替,但是对于一些老项目,来不及更改的,在选择图片并压缩的时候会出现照片模糊,解决方案如下将thumbnail使用aspectRatioThumbnail 代替#pragma mark - 完成选择后返回的图片Array(ALAsset*)- (void)finishSelectImg{    //正方形缩略图    ...

2018-06-06 11:31:19 383

原创 iOS 微信支付WechatOpenSDK集成步骤及微信支付demo

我们在集成sdk前需要到微信开放平台注册自己的应用,然后拿到对应的key,其实这个一般都是后台来做,只要问后台拿到key就行微信支付集成SDK介绍cocopods集成SDK和手动集成SDK一、cocopods集成SDK1.需要安装cocopods(安装及使用方法参照点击打开链接)2、导入pod 'WechatOpenSDK'3.配置一下scheme(申请回来的key)3.在AppDelegate....

2018-05-23 17:54:47 11289

原创 iOS得到设备唯一标识的各种方案及推荐使用方案的介绍

由于我们后台判断App登录时根据唯一标识来判断的在不同终端登录的,如果唯一标识不一样,说明是换了设备,但是我们的用户名密码是我们同一系列的app公用的,所以得保证同一公司旗下的app在同一设备下的唯一标识是同一个,避免出现同一设备登陆同一系列其他app时提示换了设备,说个简单的例子如:我的用户名是aaa,淘宝和支付宝可以共用,在我的手机上我可以用aaa同时登陆淘宝和支付宝,但是如果我在另一个手机上...

2018-05-16 11:39:06 8366 1

原创 开发者账号无法登录iTunes connect但是 能登录develop apple网站

这两天开发者账号无法登录ituneconnect但是 能登录developapple网站,打电话也没人回,本人有两个开发者账号,没有双重认证的可以登,就这个有双重认证的登不了,求大神解答...

2018-03-07 11:39:35 5598 13

转载 日期格式的管理

管理上午和下午的符号AMSymbol Property PMSymbol Property#pragma mark 管理上午和下午的符号- (void)testManagingAMAndPMSymbols { NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; // 打出的上午样式

2017-11-30 14:00:22 1009

原创 Mac 下载安装和卸载mysql

1.官网下载MySQL下载地址:http://rj.baidu.com/soft/detail/25675.html?ald2.安装mysql下载完成后,点击安装,一路确认,等待安装成功。启动mysql进入系统偏好设置,最下边一行,找到mysql打开,点击"Start MySQL Server",启动mysql安装

2017-10-18 15:06:32 273

转载 在Mac中配置tomcat服务器教程(超详细配图)以及其配置简单原理

突然想装一个tomcat服务器在自己的Mac机上,遇到了一系列的问题,在这里跟大家交流一下,希望对大家有点用.转:http://blog.csdn.net/smoothiemiss/article/details/51723812配置步骤:1.下载tomcat这一步谁都会在tomcat官网中下载,随便找一个版本下载,看不懂英语的点最明显的Download就行了  这

2017-10-18 15:02:19 402

原创 iOS 使用swift开发的优缺点开发的优缺点

妹子我OC起家,后换工作后,接手的新项目,自学swift也有一段时间了,心想着新项目,就实践一下,然后整个项目就以swift语言为主,但是在实际开发过程中,有很多无法避免的问题。      优点      1、 我们不得不承认的是swift语言比OC精简,整个项目中丢掉了头文件,以及头文件的引入。      2、报错的时候直接显示报错行      3、对于代码习惯不好的人来说是福音

2017-10-16 14:25:49 3973

转载 swift项目中,OC和swift文件相互调用

有时候 ,我们会涉及到双向混合编程,特别是OC和swift的互相引用。 swift调用oc的方法:1、桥接文件,一般是swift工程,在创建一个oc文件时,系统自动添加(不用改名,直接默认即可)2、将需要引用的oc文件 .h头文件 添加到桥接类中。 如下:然后在swift调用处,直接就可以使用了。 oc调用swift的

2017-08-10 13:40:37 6129 2

原创 swift 实现一个登陆页面

一般的登陆页面要实现用户名密码的输入,登陆按钮实现登陆,点击输入框的时候键盘弹起,还有可能要实现输入框坐标的变化,如图该界面是用XIB实现的,输入框的代理如下extension CGLoginController_iPad{    // 输入框询问是否可以编辑 true可以编辑  false不能编辑    func textFieldShouldBegi

2017-07-27 10:12:59 3126

转载 最新iOS发布App Store详细图文教程

网上有很多关于iOS发布上架的教程,但大多比较旧而且不完整、不够清晰。然后还老有人问我怎么上架,每回都得截图一个一个教,说实话真心也好累,微信关注了一个公众号,恰哈看到了这篇文章,拿来分享,之后再有人问起,直接发链接上架iOS需要一个苹果开发者账号,还没有的话申请一个。上架过程分七个步骤,按步骤一步步来。照着教程做简单、快速就能完成iOS APP

2017-07-21 11:47:36 466

原创 iOS 实现图库多张图片的选择原理

相信大家对单张图片的选择都比较熟悉,简单的UIImagePickerController就实现了但是,这里多张图片实现就相对比较麻烦,先简单的展示一下我们最终要实现的效果AssetsLibrary和PhotoKit框架都可以用来封装相册的单选与多选功能,不过ALAssetLibrary的方法在iOS 9中不被推荐了,现在都是用新的框架PhotoK

2017-07-21 11:22:07 1684

翻译 Swift iOS 8调用系统相机的拍照

Apple provides the UIImagePickerController which is an user interface to take photos using the built-in camera of an iOS device. In this tutorial we will take a photo and display it in an Image View

2017-07-19 16:59:00 1419

原创 Swift 如何嵌入OC文件以及Cocoapods管理的swift项目导入OC第三方库

桥接头文件主要应用于swift和oc的混编。这里有两种创建方式。方法一:适用于项目(swift项目)之前没创建过oc的类,或(oc的项目)swif的类这里以swift项目为例既然没用过就创建一个呗Commond+n然后创建,这是会出来一个提示选择Create Bridging Header就可以了,这样项目中就有这个桥接头文件了。在桥接头文件里直接 import

2017-07-18 12:10:31 1353

原创 tableView的 Plain 和 Grouped 区别

写了两年的iOS,说来也惭愧,竟然没分清分组tableView和不分组,一直以为有group的就是分组,没有的就不是,今天仔细研究了一下,其实不是这样的,plain和grouped只是它们的样式,至于分不分组,是由numberOfSections控制plain类型下的组头是固定的,移动tableView的时候先移动cell,在移动组头,要组头移动就要改为grouped格式.但是,改为g

2017-07-14 15:30:07 1054

原创 Swift Extension的使用场景、iOS10字体的适配

在项目开发中,经常会遇到同一个控件被频繁的创建,可能他们之间只是某些属性值不同而已,这个时候我们可以使用工厂模式去创建这些控件,也可以使用Extension(类似于OC中Category),在这里我们介绍如何使用Categoryimport UIKitextensionUILabel{    classfunc creatLabel(fontSize:C

2017-07-13 17:54:28 546

原创 OC语言单例模式与Swift单例模式

开发中,我们经常使用单例模式,编写单例,为什么要写单例呢事实上,单例也是一种设计模式,它在整个生命周期中都存在,且项目中很多地方可以共用用同一方法,为了避免在用到这一方法的地方的时候都要实例化方法,也避免后期不好维护,所以建议使用单例,OC情况下,使用单例时要使用线程,保证这个方法在项目中只被实例化一次OC单例@interface className : NSObjec

2017-07-13 14:57:48 427

转载 利用xib对控件添加约束 适配屏幕

我一直喜欢用纯代码写项目,很少用XIB,但是纯代码有时候速度会比较慢,偶尔也用一下XIB也是不错的选择原文地址:http://blog.it985.com/11997.html约束,就是对控件的限制条件,限制条件的作用就是为了让我们搭建页面适应不同的屏幕,当然也是页面的兼容性,兼容多个屏幕下面切入正题,如何为控件添加约束。添加约束主要用到下面的三个部分。从左到右

2017-07-12 17:42:07 1137

转载 OC和Swift混合开发需要做的准备

上一篇中,我描述了swift工程框架的搭建,正好现在公司重新定需求开发项目,我准备用swift来完成,也好巩固一下我的swift,但是在使用过程中,我们发现,有一些第三方是没有swift版本,所以我们需要导入一些OC文件,来实现混合开发oc中使用swift首先,在工程的 Build Settings中把 Defines Module设为 YES.

2017-07-11 09:25:05 771

原创 超级详细的swift语言搭建项目框架

1.我这里以微信为例,首先不用多说,创建项目的时候选择swift语言,项目刚创建好之后只有AppDelegate.swift,ViewController.swift,并没有之前的oc语言创建的.h和.m文件2.创建所需要的controller,结构如下3.小伙伴们想必都是会oc的,所以我不多说,直接上图,里面都有注释,这里类之间直接引用,不用导入.h文件,系统已经为我

2017-07-05 15:41:31 1596 1

原创 ViewController页面不走dealloc方法的原因

之前很少用block和delegate,由于页面比较复杂,通常都用通知,这样也可以降低模块之间的耦合性,最近新换了一家公司,其中有一个人脸识别的功能,一直调用图片输出代理方法,导致好用了大量cpu,导致设备发热,交接的时侯,上个同事跟我说是第三方的问题,改不了,解释一下,第三方用的是讯飞的sdk,后来我下了一个讯飞的demo,并没有发现任何问题,然后就在自己项目里面找,发现viewControll

2017-06-23 18:46:41 1623

原创 MAC-安装与破解WebStorm(rn开发工具)

链接: 链接: https://pan.baidu.com/s/1jHCXxki 密码: 4jyd 1安装步骤 1.打开dmg,将“WebStorm.app”拖入应用程序中; 2.打开WebStorm到激活页面Activation code-》shutdown,然后退出WebStorm,这步很重要。3.将“JetbrainsCrack.jar”复制到应用程序—右键“WebS

2017-06-05 13:52:33 1058 1

转载 iOS 线程和进程的简单理解

一、进程和线程1.什么是进程 进程是指在系统中正在运行的一个应用程序每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内  比如同时打开QQ、Xcode,系统就会分别启动2个进程通过“活动监视器”可以查看Mac系统中所开启的进程 2.什么是线程1个进程要想执行任务,必须得有线程(每1个进程至

2017-05-25 09:59:12 1153

转载 Runtime的概念。message send如果寻找不到相应的对象,会如何?

RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。runtime是一套比较底层的纯C语言API,属于1个C语言库,包含了很多底层的C语言API。 对于C语言,函数的调用在编译的时候会决定调用哪个函数(C语言的函数调用请看这里 )。编译完成之后直接顺序执行,无任何二义性。OC的函数调用成为消息发送。属于动态调用过程。在编译的时候并不能决定真正调用哪个函数(事实证明,在

2017-05-23 15:26:31 280

空空如也

空空如也

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

TA关注的人

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