- 博客(101)
- 资源 (2)
- 收藏
- 关注
原创 制作Win10系统U盘,并安装
系统U盘制作,并安装1.如何制作系统U盘?2.安装系统?参照下面链接Lenovo 系统安装流程安装可以按照lenovo的技术文档进行,但是中途会出现两个小问题,我们单独说一下。1.如何制作系统U盘?注意:打开下面链接的电脑必须是windows7、windows8、windows10的系统才行。xp、osx的系统是不显示立即下载工具的。下载win102.安装系统?划重点:上...
2019-12-13 18:02:28
757
原创 iOS 组件实现
如何实现组件化我们pod install 一个库,是如何加载到项目的创建本地组件库的流程我们pod install 一个库,是如何加载到项目的我们本地pod install后,就可以把三方库从GitHub加载到自己的项目中。具体流程如下:其实是根据查找本地的.spec仓库,找到对应的.spec后去GitHub拉代码如果本地没有找到其.spec,那么就会去GitHub的spe...
2019-12-11 20:13:54
255
原创 iOS 面试第十五节 组件化
组件化1.组件化有什么好处?2.你是如何组件化解耦的?3.为什么CTMediator方案优于基于Router的方案?4.基于CTMediator的组件化方案,有哪些核心组成?1.组件化有什么好处?业务分层、解耦,使代码变得可维护;有效的拆分、组织日益庞大的工程代码,使工程目录变得可维护;便于各业务功能拆分、抽离,实现真正的功能复用;业务隔离,跨团队开发代码控制和版本风险控制的实现;模...
2019-12-11 16:54:52
467
原创 iOS 面试第五节 WebView
WebView1.说一下 JS 和 OC 互相调用的几种方式?2.在使用 WKWedView 时遇到过哪些问题?1.说一下 JS 和 OC 互相调用的几种方式?js调用oc的三种方式:根据网页重定向截取字符串通过url scheme判断替换方法.context[@“copyText”]注入对象:遵守协议JSExport,设置context[@oc调用js代码两种方式通过web...
2019-12-11 16:14:36
554
原创 iOS 面试第四节 UIKit框架
UIKit框架1.UIView 和 CALayer 是什么关系?2.Bounds 和 Frame 的区别?3.setNeedsDisplay 和 layoutIfNeeded 两者是什么关系?4.谈谈对UIResponder的理解5.loadView的作用?6.使用 drawRect有什么影响?7.keyWindow 和 delegate的window有何区别1.UIView 和 CALayer...
2019-12-11 16:11:22
327
原创 iOS 面试第十一节 编程方式与架构
编程方式与架构链式编程响应编程链式编程可以用在什么地方:按钮添加点击事件KVO使用对textfield文字改变的监听对Label imageView添加点击事件通知定时器使用多个信号同时执行 rac_liftSelector (网络线程关系管控)多个订阅 RACMulticastConnection绑定信号 bind映射链式编程其实就是将多个操作(多行代码)通过点号....
2019-11-27 14:42:00
154
原创 iOS 面试第十四节 程序设计题
设计一个通过LRU缓存机制确定存储方案:答案揭晓确定存储方案:我们常用的存储方案数组、链表。但是方案选链表存储。原因如下:由于数组是进行连续内存创建,需要在内存中开辟一块连续内存地址才能进行的,而链表是将很多歌分散的内存连在一起。所以这一点上链表占优势。数组同链表都支持数据的查找、插入和删除操作。但是 我们知道,在进行数组的插入、删除操作时,为了保持内存数据的连续性,需要做大量的数据搬移...
2019-11-22 02:03:13
183
原创 iOS 面试第十三节 三方库
三方库1.进程与线程2.什么是多线程?3.多线程的优点和缺点4.多线程的 并行 和 并发 有什么区别?5.iOS中实现多线程的几种方案,各自有什么特点?6.多个网络请求完成后执行下一步7.多个网络请求顺序执行后执行下一步8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组9.多线程中的死锁?10.GCD执行原理?1.进程与线程...
2019-11-19 03:49:35
180
原创 iOS 面试第十二节Runloop
Runloop1.进程与线程2.什么是多线程?3.多线程的优点和缺点4.多线程的 并行 和 并发 有什么区别?5.iOS中实现多线程的几种方案,各自有什么特点?6.多个网络请求完成后执行下一步7.多个网络请求顺序执行后执行下一步8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组9.多线程中的死锁?10.GCD执行原理?1.进程...
2019-11-19 03:48:00
257
原创 iOS 面试第十节 Runtime
Runtime1.进程与线程2.什么是多线程?3.多线程的优点和缺点4.多线程的 并行 和 并发 有什么区别?5.iOS中实现多线程的几种方案,各自有什么特点?6.多个网络请求完成后执行下一步7.多个网络请求顺序执行后执行下一步8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组9.多线程中的死锁?10.GCD执行原理?1.进程...
2019-11-19 03:46:53
207
原创 iOS 面试第九节 多线程
多线程1.进程与线程2.什么是多线程?3.多线程的优点和缺点4.多线程的 并行 和 并发 有什么区别?5.iOS中实现多线程的几种方案,各自有什么特点?6.多个网络请求完成后执行下一步7.多个网络请求顺序执行后执行下一步8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组8.异步操作两组数据时, 执行完第一组之后, 才能执行第二组9.多线程中的死锁?10.GCD执行原理?1.进程与线程...
2019-11-19 03:42:44
235
原创 iOS 面试第八节 网络
网络1.网络七层协议2.Http 和 Https 的区别?Https为什么更加安全?3.HTTPS的连接建立流程4.解释一下 三次握手 和 四次挥手5.TCP 和 UDP的区别6.Cookie和Session7.DNS是什么8.DNS解析过程1.网络七层协议滴滴多大啊 奥德赛打发第三方打算范德萨发阿斯顿发打算范德萨发撒法阿斯蒂芬地方的撒防辐射服的地方的撒发大水发的说法胜多负少的打发士打法...
2019-11-19 03:37:50
270
原创 iOS 面试第七节 消息传递的方式
消息传递的方式1. KVC实现原理滴滴2. KVO实现原理3. 如何手动触发KVO方法4. 通知和代理有什么区别5. block和delegate的区别6.为什么Block用copy关键字1. KVC实现原理的的滴滴滴滴多大啊 奥德赛打发第三方打算范德萨发阿斯顿发打算范德萨发撒法阿斯蒂芬地方的撒防辐射服的地方的撒发大水发的说法胜多负少的打发士打法爱的色放撒地方第三方阿士大夫撒...
2019-11-19 03:30:32
225
原创 iOS 面试第六节 内存管理
内存管理1. proprety 介绍2.Object-C语言中常用的属性proprety有哪些?有什么区别吗?2. 为什么weak修饰的属性,当其实例被释放后,可以置为nil?1.什么情况使用weak关键字,相比assign有什么不同?2.如何让自己的类用copy修饰符?如何重写带copy关键字的setter?3.深拷贝与浅拷贝4.@property的本质是什么?ivar、getter、sette...
2019-11-18 04:00:39
297
原创 iOS 面试第三节 Foundation框架
Foundation框架1.nil、NIL、NSNULL 、NULL有什么区别?2.如何实现一个线程安全的 NSMutableArray?所有的Mac OS X和IOS程序都是由大量的对象构成,而这些对象的根对象都是NSObject,NSObject就处在Foundation框架之中1.nil、NIL、NSNULL 、NULL有什么区别?nil、NIL可以说是等价的,都代表内存中一...
2019-11-17 23:09:47
192
原创 iOS 面试第一节 数据结构
数据结构数据结构1.数据结构存储一般常用的有几种?各有什么特点?2.集合结构、线性结构、树形结构、图形结构3.单向链表、双向链表、循环链表4.数组同链表的区别数据结构1.数据结构存储一般常用的有几种?各有什么特点?数据存储的结构一般有两种:顺序存储结构、链式存储结构顺序存储结构: 比如说数组,1-2-3-4-5-6-7-8-9-10存储是按顺序的。再比如栈、队列都是顺序存储结构链式存...
2019-11-17 07:04:45
290
原创 Xcode 一个工程多个项目,项目资源互享
文章目录参考链接操作流程路径报红怎么办参考链接https://www.jianshu.com/p/468f8da385e7操作流程首先创建平台项目 workspace创建项目App1、App2打开workspace平台,file --> add xxxx to --> 选择App1、App2加入进来。路径报红怎么办如果是plist路径找不到了,那么在Target–...
2019-02-15 10:36:53
695
原创 上传本地项目到GitHub
首先在GitHub上面创建一个远程仓库。本地项目要确保已经添加过git管理。本地代码进行 git add . git commit -m"xxx" 这样的操作上传远端仓库 git remote add origin https://github.com/shenxxxx/Test.git(或者ssh形式)然后git push。这时候会报下面这个错误(需要注意本地与远端链接, git...
2019-02-15 10:30:01
137
原创 VIPER架构学习
VIPER架构学习探索编程准则资源下载什么是VIPER功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入编程准则代码...
2019-02-12 19:56:09
4713
原创 学习点滴
NSAssert 使用,在封装组件中使用 // 使 NSAssert 只进入断点,之后可以继续运行,而不会杀死程序#undef NSAssert#define NSAssert(condition, frmt, ...) \do { \@try { \if (!(condition)) { \NSString *text = @"Assert Exception: "; \...
2018-08-13 16:24:03
217
原创 Xcode编程中Mac快捷键的使用
Mac快捷键的使用Xcode编程相关项目运行: command + R大括号折叠: command + option + 箭头左右 清除缓存: command + shift + k项目内搜索: command + shift + omac常用快捷键电脑整体搜索: command + 空格...
2018-04-28 17:30:39
232
原创 tableView,collectionView如何获取当前cell?
tableView,collectionView如何获取当前cell?collectionView.visibleCells.first!
2017-12-21 17:56:36
3560
原创 Mac 常用命令行
系统根目录/Library/WebServer/Documents/ 打开apache$ sudo apachectl start 关闭apache$ sudo apachectl stop 重启apache$ sudo apachectl restart 查看apache版本$ httpd -v 将miniGame文件里内容考到根目录的minigame文件中去$ s
2017-10-30 16:12:16
569
原创 Mac 本地安装 wordpress
Mac OS X 内置了Apache 和 PHP,使用起来非常方便,只要开启即可1. 启动Apache服务终端Terminal操作打开终端,输入 sudo apachectl start,再输入密码,这样Apache就运行了。 输入sudo apachectl -v,可以查看Apache的版本信息 2. 运行PHP修改Apache配置文件在终端中输入sudo vim /etc/apache
2017-10-11 18:45:16
2852
原创 wkWebView更改背景色
wkWebView.isOpaque = false wkWebView.backgroundColor = UIColor.black
2017-09-01 17:36:25
8511
原创 从外界跳转到APP 的时候导航栏会闪一下
处理办法是将背景色与跳转的颜色设置为一致即可。 let navBar = navigationController?.navigationBar navBar?.barTintColor = UIColor.black navBar?.isTranslucent = false
2017-09-01 14:59:53
923
原创 storyboard中 tableView的cell禁止响应的方式与label换行
cell行数禁止响应的方式 在selection中选择方式default改为Nonelabel换行 \n或者改为 option+回车(enter)
2017-08-09 09:26:26
392
原创 WKWebView禁止捏合的方法
func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!) { let javascript = "var meta = document.createElement('meta');meta.setAttribute('name', 'viewport');meta.setAttribute('co
2017-07-27 19:03:21
2833
原创 scrollview刷新界面导致下沉64个point的问题
由于xib或者storyboard中有自适应的下沉,所以需要将点禁止掉self.automaticallyAdjustsScrollViewInsets = false
2017-07-21 19:14:15
352
原创 关于WebGL进行屏幕截屏的问题
最近项目中用了webgl表示一个3D地图,在进行twitter分享时候,截屏失败。 解决方案: 通过调用本地js代码,通过js进行截屏,通过返回url来获取图片的base64数据,然后将数据进行转换为data,然后转换为图片进行分享。注意对base64格式数据转换为data的时候要注意使用自身的方法。//通过url返回的图片base64数据获取一个图片 func getImageFrom
2017-07-07 16:38:05
4925
2
原创 对字符串进行阴影处理---swift3
对字符串进行阴影处理,需要先将字符串转换为Attribute形式 shadow = NSShadow.init() shadow.shadowColor = UIColor.black shadow.shadowBlurRadius = 4.0 shadow.shadowOffset = CGSize.init(width: 1, he
2017-07-07 16:30:18
486
原创 iOS swift 获取对应APP定位权限是否打开并引导用户打开
if let appSettings = NSURL(string: UIApplicationOpenSettingsURLString) { if isLocationServiceOpen() { let alertCon = UIAlertController.init(title: "端末位置坐标没有被允许,引导用户去设置打开坐标",
2017-06-06 19:30:34
3676
原创 UINavigationBar 相关问题
1. 关于更改navigationBar 透明//此方法封装navigationBar背景透明,然后设置背景色 func navigationBarBackGround(red:CGFloat, green:CGFloat, blue:CGFloat, alpha:CGFloat) { currentMenu?.navigationBar.setBackgroundImage(
2017-05-23 19:02:24
265
原创 How to bring a subView to the front a UIView OR toBack a UIView
使用的是bringSubview这个方法parentView.bringSubview(toFront: childView)或者可以写成如下childView.superview.bringSubview(toFront: childView)
2017-05-22 10:38:28
463
原创 关于如何更改frame坐标的问题
1.分两种情况,一种是在封装好的view空间本身 2.另一种是在调用这个空间的viewController中1.在view控件本身中如何修改frame调用本身的控件方法layoutIfNeeded layoutIfNeeded()// func layoutIfNeeded() {// super.setNeedsFocusUpdate()// r
2017-05-19 10:58:15
749
原创 GitHub 未提交到仓库数据 status 提示红HEAD detached
HEAD detached at理解为分支是通过一个head的指针来指向的 git checkout 实际上是修改HEAD文件的内容,让其指向不同的branch。 HEAD文件指向的branch就是当前branch.通过git branch命令看到的结果和HEAD文件内容一致。 [plain] view plain copy $ git branch -v * master 1aea8d9
2017-03-28 15:35:20
2631
原创 关于使用终端terminal对GitHub项目进行管理
1. 首先简单介绍vimvim是Unix/Linux系统最常用的编辑器之一 我们需要创建md文件,所以需要简单知道这个文件创建文件的语句 touch README.md 进入文件 vim README.md对文件进行编辑 点击i 可以进入编辑状态(或者common v)保存编辑文件 :x进行保存 “:x”和”:wq”的真正区别,如下: :wq 强制性写入文件并
2017-03-28 10:54:37
2948
原创 Swift3 开发中的一些小技巧
关于字符串的问题import UIKitvar firstName = "Jack"var lastName = "Bauer"var age = 45var fullName = firstName + " " + lastNamevar fullName2 = "\(firstName) \(lastName) is \(age)"fullName.append(" III")var b
2017-03-23 17:34:07
371
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人