- 博客(29)
- 资源 (15)
- 收藏
- 关注
原创 UINavigationController讲解(一)
UINavigationController讲解(一)UINavigationController简单介绍初始化“` //通过一个自定义的导航栏和工具栏创建导航控制器(instancetype)initWithNavigationBarClass:(nullable Class)navigationBarClass toolbarClass:(nullable Class)toolbarClas
2017-03-20 17:39:21
516
原创 iOS开发多线程NSOperation(四)
NSOperation 可以实现多线程 是一个抽象类 不能直接使用 实现的手段通过该类的子类 NSInvocationOperation NSBlockOperation 实现多线程NSInvocationOperation 在创建任务时 用一个方法来表示 任务必须放在任务队列中管理 队列保持任务以先进先出的顺序NSBlockOperation 创建任务时 用一个block来表示
2017-03-20 17:35:50
374
原创 iOS开发多线NSThread(三)
NSThread是在GCD,NSThread,NSOperationQueue三种方法里面相对轻量级的,但需要管理线程的生命周期、同步、加锁问题,这会导致一定的性能开销一、NSThread简单介绍苹果开发文档链接1、对象方法初始化线程- (instancetype)init NS_AVAILABLE(10_5, 2_0) NS_DESIGNATED_INITIALIZER;- (in
2017-03-20 16:45:30
374
原创 iOS开发多线程GCD(二)
一、分组/* 分组的主要目的 是判断一组操作 是否全部执行结束 原理 将需要执行的操作 添加到同一个分组下 如果其中的某一个操作结束 就会组中移除 当组里面的操作数变为0的 说明所以的操作全部结束 */ //1.创建一个分组 管理任务 dispatch_group_t myGroup = dispatch_group_create();
2017-03-17 17:47:34
500
原创 Android实现app内部更改系统时间(需要手机root)
Android可通过shell脚本修改系统时间(测试可行)1、root手机一部2、封装修改时间代码public void testDate(String time){ textView.setText(getDate(timeLong)); try { Process process = Runtime.getRuntime().
2017-03-16 16:52:29
22692
12
原创 iOS开发多线程前言(一)
首先介绍一下多线程iOS里多线程实现分为,如果大家不想看讲解可以直接点击跳转。NSThread,NSOperationQueue,GCD
2017-03-16 15:37:29
293
原创 iOS10开发哪些坑
因为之前的都是iOS9时期的项目,而现在的项目都是iOS10的项目所以问题重重,下面我来给大家介绍几个1. 如果你的项目设计到使用相册或者照相机必须在Info.plist加上以上权限 NSCameraUsageDescription 是否允许app打开相机 NSPhotoLibraryUsageDescription 是否允许app打开相册 如果不然你会遇到不少问题首先如果你是在
2017-03-15 18:48:01
597
原创 Mark Down简单使用
Mark Down简单使用一、Mark Down介绍什么是 MarkdownMarkdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。简单地说,它就是一种语法,一门适合用于写作的简单语言。用过 Markdown 的人都知道,它的高效在于能有效避免不规范的行高、行距、首行缩紧等格式要求,以及繁乱复杂的字体,这样用户就能专注于写作本身,抛开
2017-03-06 17:22:09
1311
原创 brew安装
brew全称叫Homebrew是macOS 不可或缺的套件管理器,只需要一个命令就可以安装或者卸载软件,非常方便。下面进行简单介绍,详情请访问brew官网,点击这里。一、安装brew在终端输入/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2017-02-25 00:43:57
3587
原创 iOS开发二维码生成(一)
二维码是一种比一维码更高级的条码格式。一维码只能在一个方向(一般是水平方向)上表达信息,而二维码在水平和垂直方向都可以存储信息。一维码只能由数字和字母组成,而二维码能存储汉字、数字和图片等信息,因此二维码的应用领域要广得多。相信大家在大部分app中都会遇到生成或者扫描二维码的功能需求,今天就给大家讲一下二维码生成。1、生成原生二维码// 1.创建过滤器 CIFilter *fi
2017-02-14 15:48:13
462
原创 IDEA下运行maven项目tomcat启动报错
IDEA下运行maven项目报错3-Feb-2017 12:25:16.948 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start: org.apache.catalina.LifecycleEx
2017-02-13 13:38:53
12982
原创 Mac下tomcat启动报错Cannot run program。。。 Permission denied
mac下tomcat启动报错Cannot run program "/Users/horse_leo/Documents/apache-tomcat-7.0.75/bin/catalina.sh" (in directory "/Users/horse_leo/Documents/apache-tomcat-8.0.18/bin"): error=13, Permission denied从英
2017-02-13 13:22:16
8975
原创 对象与元类对象
1、类对象(class object)①类对象的实质我们知道了:类对象是由编译器创建的,即在编译时所谓的类,就是指类对象(官方文档中是这样说的: The class object is the compiled version of the class)。任何直接或间接继承了NSObject的类,它的实例对象(instance objec)中都有一个isa指针,指向它的类对象(class
2017-02-07 11:17:39
665
原创 Runtime的介绍与简单运用(二)
在上一篇文章我们介绍了Runtime里面关于对象运行在Runtime里面的表示,本篇文章我们讲介绍关于Runtime在实际中的运用一、首先我们先谈一下OC类对象方法与类方法调用的机制如果用对象调方法,会到对象的isa指针指向的对象(也就是类对象)操作。如果调用的是类方法,就会到类对象的isa指针指向的对象(也就是元类对象)中操作。此处关于类对象与元类对象的区别我们将在后面介绍道
2017-02-07 11:07:36
408
原创 Runtime的介绍与简单运用(一)
runtime简称运行时 我们都知道Object-C是一种是根据C语言所衍生出来的语言,因此我们的代码在程序运行过程中都会被转化成C代码执行,而runtime就相当于这个桥梁,对于一个想要真正理解OC语言的人,学习runtime是必不可少的,好比想要深刻理解java,映射是必不可少一样。例如[objc logMyInfo];会被转化成objc_msgSend(objc, @s
2017-02-06 18:44:51
540
转载 如何mac客户端上传github
1、下载github客户端https://desktop.github.com/2、登录github客户端并设置邮箱地址登录账户填写邮箱3、创建一个资源库->Create Repository取消以下方式上传上传工程,此种方式下载不知为何有问题注:本地项目选择时一定要选择文件根目
2017-02-06 17:50:54
347
原创 iOS实现scrollView下拉刷新和上拉加载
1、配置环境导入libYXScrollRefresh文件夹到工程Build Settings—>Linking—>Other Linker Flags添加-all_load2、使用导入文件#import"YXScrollRefreshView.h"创建UIScrollView并且选择继承YXScrollRefreshView类(支持NIB和代码创建)遵守协议refres
2017-02-06 16:50:03
4158
原创 Android与JS交互
1、创建并绑定webView webView = (WebView)findViewById(R.id.webView);2、添加JS交互功能webView.getSettings().setJavaScriptEnabled(true);3、添加一个对象, 让JS可以访问该对象的方法, 该对象中也可以调用JS中的方法 jsinterface = new JsInterface
2017-02-03 18:40:49
298
原创 OC与JS交互WKWeView(二)
苹果在iOS8时候推出WKWebView来替代UIWebView,并且使用Nitro JavaScript引擎,这意味着所有第三方浏览器运行JavaScript将会跟safari一样快对比UIWebView来说优点1,在性能、稳定性、功能方面有很大提升2,允许JavaScript的Nitro库加载并使用(UIWebView中限制);3,支持了更多的HTML5特性;4,高达60f
2017-02-03 14:17:35
642
原创 OC与JS交互UIWeView(一)
随着h5的兴起,原生app与h5页面交互的场合越来越多,UIwebView相对于WkWebView已经非常成熟用法也非常简单无需配置,下面我来介绍一下在UIWebView下与js的简单方法调用在UIWebView中与js交互还需要借用JavaScriptCore。1,新建一个OC工程2,在页面加入一个UIWebView控件,并且实现代理。//是否允许html页面加载或者跳转,可在此
2017-02-03 11:04:27
614
原创 Mac下配置本地Maven
1、下载maven地址http://maven.apache.org/download.cgi2、解压设置maven本地地址解压后我放在~/Library/环境配置/apache-maven-3.3.9目录下3、配置环境。编辑profile文件,并添加maven路径打开(bash_profile)终端输入open -e .bash_profile添加maven路径exp
2017-01-21 15:09:01
6587
原创 可滑动折线图功能实现
前段日子做一个医疗的项目,需要用到可滑动刷新监测点位置,折线图,柱状图功能看了下网上的demo也没有找到特别理想的demo,便自己写了下,下面趁着午休给大家分享下可滑动的折线图实现。1,折线功能实现,利用贝塞尔曲线连接两点之间位置实现- (void)updatePathsArray:(NSArray *)array{ if ([array count] >= 2) {
2016-12-30 14:11:37
3197
原创 Error:(95, 74) 警告: 最后一个参数使用了不准确的变量类型的 varargs 方法的非 varargs 调用; 对于 varargs 调用, 应使用 Class<?> 对于非 varar
警告: 最后一个参数使用了不准确的变量类型的 varargs 方法的非 varargs 调用;[javac] 对于 varargs 调用,应使用 Java.lang.Object[javac] 对于非 varargs 调用,应使用 java.lang.Object[],这样也可以抑制此警告paths = (String[]) sm.getClass().getMethod("getVo
2016-12-19 14:43:45
10615
原创 Android开发获取内存卡路径
习惯了iOS开发的沙盒储存,对于Android开发的SD卡储存不怎么了解,最近做一个Android TV项目特地研究了下Android数据本地化存储;对于大部分Android大文件存储例如,视频文件一般都会存到SD卡上,之前做手机时一直用getExternalStorageDirectory()路径存储数据,而且很好用;这次需求是必须存到外置SD卡,研究了下Android仪器(Android盒子)
2016-12-19 14:37:31
2212
原创 Android studio导入项目gradle location is incorrect问题
我是mac电脑,在用svn合作开发时候项目删除了没必要的文件后,我check out下项目识别不了本地gradle,解决办法,使用local gradle 进入 Android studio安装目录选择gradle即可成功。
2016-10-24 10:28:53
10553
转载 Android设备调试(二)Genymotion模拟器引起的Address already in use ADB server didn't ACK
在终端输入adb命令,出错如下:localhost:work zhangyg$ adb devicesList of devices attachedadb server version (32) doesn't match this client (36); killing...error: could not install *smartsocket*
2016-10-09 16:39:11
1170
原创 Android设备调试(一)没有USB插口,通过TCP/IP调试
由于公司安排需要做一款安卓电视盒子项目,不过系统却是Android Pad 4.4系统,没有usb接口通过联系厂家得知lan口连接adb可以调试.百度lan口调试得知android 2.0开始就已经支持TCP/IP设备调试,观察后可以看见此设备支持wifi,介绍完毕开始步骤1,打开系统开发者选项,保持该设备和电脑同时处于一个局域网下,连接成功后进入系统设置关于本机查看分配的IP地址.
2016-10-09 16:23:38
2423
2
原创 win7+mbr安装黑苹果
一,介绍 对于很大一部分打算学习ios开发的程序员都止步于缺少设备,因为苹果开发最重要的一点是必须在苹果系统之上,俗话说的好巧妇难为无米之炊,正是此意,闲话不多说,接下来就来跟大家分享下我曾经装黑苹果的经验,若有不对之处请留言告知! 二,所需软件
2015-12-13 02:36:25
22192
6
10.10.5 hp破解内核
2015-12-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人