13 imJackXu

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 1w+

【Swift】变量/常量/类型总结

1、变量(Variable)变量,可以理解为存放某一类型的值的容器,如:var count:Intvar shouldRemind:BOOLvar text:Stringvar list:[ChecklistItem]一个变量的数据类型,决定了它能存放什么类型的数据。有些变量只存放简单的值,如Int、Bool。另一些变量存放相对复杂一些的类型例如String、Array。常见的基本...

2020-04-30 14:57:22

【一步步学小程序】3. 使用自定义组件(component)

上一节创建了一个包含多个课程数据的列表。这一节我们用自定义组件(component),来优化列表页面,即如图,我们把每个课程单元格封装为组件。使用组件的好处:自定义组件可以在不同的页面中重复使用将复杂的页面拆分成多个低耦合的模块,有助于代码维护1、首先我们在项目根目录中创建component目录,用以存放项目开发过程中创建的所有自定义组件。2、接着创建课程组件course,只需要在...

2020-04-23 17:25:51

【一步步学小程序】2.列表展示

我们上一节已经创建了一个可以点击切换的tabbar。这节我们开始正式敲代码,在首页上展示一个可以上下滚动的课程列表:首先打开上一节的pages/home/homeMain/homeMain.wxml文件,布局相关代码都会在此文件中,小程序的布局方式类似Html标签,也有点类似Android中的xml布局文件或SwiftUI。IDE默认已经帮我们创建了一行布局代码:<text>pa...

2020-04-07 17:59:44

【一步步学小程序】1.创建项目以及TabBar

1.创建项目如图,创建项目,输入项目名称、选择目录,AppID是唯一标识,我们可以先点如图红框内的测试号,自动生成一个AppID,然后点新建即创建完一个新项目。2.创建3个页面确保如图左上角的编译器按钮是选中状态,此时我们就可以看到项目的文件结构和编译器打开app.json文件。所有页面都需要在此json中的pages标签下进行声明。我们看到开发工具已经帮我们创建了两个页面index和...

2020-03-28 12:39:46

Quartz2D在项目中的实际使用

还记得大学刚学iOS那会,从学校图书馆借了本iOS开发的书,有一章节介绍了Quartz2D,当时看得一头雾水,感觉这画画线,画画圆有什么用呢????️?工作一段时间后,遇到了一些需求,终于可以把咸丰年学的Quartz2D知识拿出来用一用了????。下面总结下这些年做项目用到Quartz2D的7个例子。一.单纯画个圈。有个项目要模仿呆萌价APP顶部轮播图,然后轮播图后面需要有个圆弧:一看到这需求,不简单...

2020-03-10 16:59:52

Swift学习总结【持续更新】

1. try、try?、try!的区别:try:需要用catch捕捉异常,如: do { let data = try encoder.encode(item) try data.write(to: dataFilePath(), options: .atomic) } catch { print("Error e...

2020-02-15 13:02:12

通用的排序按钮

排序按钮,使用Core Graphic绘制,可以指定颜色、大小、字体等:使用场景如下:1.使用方法下载demo代码。将HYRankView.h和HYRankView.m代码拖入工程。然后使用如下代码,即可快速添加一个名称为价格的排序按钮HYRankView *view = [HYRankView viewWithTitle:@"价格" frame:CGRectMake(0,100,8...

2020-02-06 17:20:18

pod setup慢的解决方法

最近使用pod setup更新CocoaPods本地检索库,无奈只有10几k,还中途报错。最终通过以下步骤,完成更新。1.手动下载Specs检索库执行pod setup后,实质是从github上clone检索库(https://github.com/CocoaPods/Specs),所以我们可以改为手动从github上下载后,前往文件夹:~/.cocoapods/repos将文件复制进去...

2020-01-23 15:07:39

【React Native】iOS原生导航跳转RN页面

上一篇介绍了React Native使用react-navigation进行导航跳转页面,现在我们介绍下原生iOS中怎么导航进一个新的React Native页面。一、原生跳转React Native创建HYReactNativeManager管理类.在HYReactNativeManager.h中声明实现声明RCTBridgeDelegate协议,并声明一个全局bridge的属性@i...

2019-05-22 20:58:37

【React Native】react-navigation导航使用方法

上一篇介绍了如何在已有iOS项目中集成React Native。这一篇我们把上一篇的demo做下拓展,添加点击电影跳转到详情页。页面跳转使用React Native推荐的第三方导航控件:react-navigation集成react-navigation根据官方指引,在终端cd到项目根目录,分别输入以下命令进行集成:npm install --save react-native-navi...

2019-05-21 20:00:34

给iOS开发者的React Native入门使用教程

目录一. 原生iOS项目集成React Native二. 原生跳转RN页面三. 显示豆瓣热门电影列表四. 改为导航一. 原生iOS项目集成React Native创建一个新的文件夹,如RNProject,然后新建一个/ios的子文件夹,将已有的iOS项目全部文件复制进去。在RNProject根目录创建package.json文件,内容如下:{ "name": "RNProj...

2019-05-20 11:35:58

一道GCD笔试题分析

dispatch_queue_t queue = dispatch_queue_create("com.ihunyu.test", DISPATCH_QUEUE_CONCURRENT); NSLog(@"1"); dispatch_async(queue, ^{ NSLog(@"2"); dispatch_async(queue, ^{ ...

2019-04-25 15:20:20

利用Injection插件加快Xcode"编译"速度

我们在调试iOS原生代码时,每次修改都需要Command+R来重新编译运行。当项目代码量很大,编译时间就会很漫长。因此对于开发中来说,如果能加快编译速度,能大大提高生产效率。如果我们能像Swift Playground、小程序或网页那样修改代码后能实时在界面上反馈出来就好了。然鹅,还真的有这样的Xcode插件,让你可以修改代码后立即在模拟器或真机上看到改变,它便是Injection for Xco...

2019-04-20 22:01:50

Runloop总结

1.什么是RunloopRunloop字面上翻译就是运行循环,也就是一直在转圈圈运行着,类似于do…while()。我们思考一个问题:一个线程执行完成后就会退出,当我们启动一个iOS APP时,系统会调用main.m文件的main()函数:int main(int argc, char * argv[]) { @autoreleasepool { return UIA...

2019-04-16 21:46:22

TextKit及应用

在iOS开发中我们常常使用UIKit的UITextView、UITextField、UILabel来显示文字。在它们的底层,是一个叫做TextKit的强大引擎。通过TextKit,我们可以通过方便的接口去修改文字的样式和排版,而不需要直接操作复杂的Core Text。1.什么是TextKit在iOS7中,苹果引入了Text Kit——一个快速而又现代化的文字排版和渲染引擎。Text Kit在...

2019-04-08 20:50:49

音乐(文件)断点下载

这篇文章介绍音乐等文件的下载,支持断点续传。我们需要创建两个类HYDownLoader:音乐下载的主类,可以进行新建下载、暂停下载、取消下载等。HYFileTool:文件管理类,主要为HYDownLoader服务,可以判断文件是否存在、移动文件等。一、文件管理工具类HYFileToolHYFileTool类比较简单,直接上代码,.h文件已经把方法备注得比较清楚了.h文件#import...

2019-03-20 13:12:21

CocoaPods远程私有库

上一篇(让自己的开源项目支持CocoaPods集成)介绍了将自己开发的框架代码发布到Cocoapods,全球的开发者都可以通过pod search搜索到我们的框架代码以及通过pod install进行安装。但有时候我们希望只有我们项目内部的人才可以集成和修改,此时就可以创建远程的私有库。通过pod search命令,Cocoapods会在官方索引库中进行搜索,通过pod repo可以查看本机添加...

2019-03-17 13:37:42

让自己的开源项目支持CocoaPods集成

平时我们会经常用CocoaPods集成第三方库,那如何使自己的代码也可以通过CocoaPods集成呢?只需要简单几步:1.创建git仓库,把代码提交到Github或码云等2.在git仓库中创建.Podspec文件,修改里面的配置(如代码的版本、简介、git仓库地址等)3.将.Podspec提交到CocoaPods下面用一个实际例子JXCalendarTool来详细讲解一、将源代码提交到G...

2019-03-12 10:39:34

GitHub与Git入门

一、GitHubGitHub为开发者提供Git仓库的托管服务,可以进行代码共享、团队协同开发,创建了社会化(social coding)编程的概念。二、GitHub与Git的区别开发者将源代码存入“Git”仓库,而GitHub则在网络上提供Git仓库服务。三、Git与SVN的区别相同点:都可以进行版本管理,即管理更新的历史记录,例如记录添加或更改源代码的过程,回滚到特定阶段,恢复误...

2019-03-06 16:07:54

iOS逆向(1)——利用ipa重签名,3分钟iPhone安装多个微信

在iOS逆向开发时需要把下载的ipa文件安装到iOS设备上,才能进行动态分析,才能更好的玩别人的App。但是有经验的同学是知道的,下载的ipa(AppStore 和自己发布的除外) 文件是不能直接安装到自己的iPhone (未越狱)上的。为什么?因为苹果爸爸作了一个比较复杂的加密—签名。那又有同学问了什么是签名呢?为什么要签名呢?来看看这里https://www.jianshu.com/p/6fa...

2019-02-27 13:10:03

查看更多

勋章 我的勋章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享宗师
    分享宗师
    成功上传21个资源即可获取