首页
学习
活动
专区
工具
TVP
发布

青玉伏案

专栏作者
243
文章
329438
阅读量
55
订阅数
React Native之新架构中的Turbo Module实现原理分析
有段时间没更新博客了,之前计划由浅到深、从应用到原理,更新一些RN的相关博客。之前陆续的更新了6篇RN应用的相关博客(传送门),后边因时间问题没有继续更新。主要是平时空余时间都用来帮着带娃了,不过还是要挤挤时间来总结下,目标是完成由浅到深、由应用到原理的RN系列博客。本篇算是属于原理部分的博客,不过不在之前计划中。本篇是本人在公司内部某事业群大前端月刊中发布的一篇纯技术分享的博客,是基于Facebook的RNTester工程进行的TurboModule的源码分析,因为不涉及公司内部的敏感代码及相关信息,而且在公司内部发布受众有限,所以就以个人名义同步到自己的博客中,与大家分享及交流。文中所述内容仅代表个人观点,如有偏颇或不恰当之处还望指正。
lizelu
2021-10-18
4.8K0
ReactNative之Redux详解
用redux有一段时间了,感觉还是有必要把其相关的知识点系统的总结一下的,毕竟好记性不如烂笔头。上篇博客更新了关于《ES6中的迭代器、Generator函数以及Generator函数的异步操作》的内容,该内容时saga的基础,稍后会总结saga相关知识点。循序渐进,本篇博客主要总结的是Redux相关的内容,然后下篇博客打算总结一下react-redux, 以及redux-thunk、redux-saga中间件。
lizelu
2020-06-19
1.2K0
iOS开发之抽屉效果实现
  说道抽屉效果在iOS中比较有名的第三方类库就是PPRevealSideViewController。一说到第三方类库就自然而然的想到我们的CocoaPods,今天的博客中用CocoaPods引入PPRevealSideViewController,然后在我们的工程中以代码结合storyboard来做出抽屉效果。   一.在工程中用CocoaPods引入第三方插件PPRevealSideViewController.     (1).在终端中搜索PPRevealSideViewController的版本
lizelu
2018-01-11
1.8K0
iOS开发之WebView
  做iOS的应用也有一段时间了,在之前的demo中一直没有机会用到WebView,今天就查缺补漏一下,使用一下WebView。最早接触WebView是在Android中接触的,iOS中的WebView的用法也是挺简单的。本篇博客没有什么高深的技术,只是对webView的应用。从字面意思可以看出WebView就是用来加载网页的视图,和手机上的浏览器类似。   1.之前用storyboard拖控件时只是看着WebView在哪里静静的躺着(如下图所示),一直没有用过,如果想使用的话也很简单,就是把web vie
lizelu
2018-01-11
8600
iOS开发之地图与定位
  无论是QQ还是微信的移动客户端都少不了定位功能,之前在微信demo中没有添加定位功能,今天就写个定位的小demo来了解一下定位和地图的东西。地图和定位看上去是挺高大上一东西,其实用法比TableView简单多了,下面的Demo是用的iOS中自带的地图和定位,当然了也可以用第三方的来加载地图,比如百度地图啥的,在这就不赘述了。今天的博客主要是介绍MKMapView的使用,MapView的使用和其他组件的用法差不多,MapView用的是委托回调,在使用mapView的Controller中要实现MKMapV
lizelu
2018-01-11
1.4K0
IOS开发之获取Storyboard创建的ViewController
  前面的两篇博客都是学习有关屏幕适配也就是相对布局的东西,这篇博客中将会学习视图间的切换。视图间的切换我们可以用代码完成或者用storyboard来建立各个视图控制器间的关系。在需要用到代码进行切换时会用代码进行视图间的跳转。下面的东西我们会主要介绍到NavigationController来进行视图间的切换。下面也是和之前一样把代码和storyboard结合起来学习。   下面介绍一下我们要实现的功能和效果: App打开的第一个界面是登陆页面,登陆页面由用户名和密码以及一个登陆按钮构成。当登陆成功时会p
lizelu
2018-01-11
1.7K0
IOS开发之自动布局显示网络请求内容
  在上一篇博客中详细的介绍了IOS开发中的相对布局和绝对布局,随着手机屏幕尺寸的改变,在App开发中为了适应不同尺寸的手机屏幕,用自动布局来完成我们想要实现的功能和效果显得尤为重要。本人更喜欢使用相对布局。在下面要学习的例子中暂且先用我们的StoryBoard来设置我们组件的约束,以后会在代码中给我们的元素新建约束。iPhone4,5和将要发布的iPhone6的屏幕的大小都不一样,所以屏幕的适配是我们搞App开发必须要考虑的问题。   我们要完成一个什么例子呢,先上两张程序运行最终的结果图,之后看着图提出
lizelu
2018-01-11
7500
IOS开发之绝对布局和相对布局(屏幕适配)
之前如果做过Web前端页面的小伙伴们,看到绝对定位和相对定位并不陌生,并且使用起来也挺方便。在IOS的UI设计中也有绝对定位和相对定位,和我们的web前端的绝对定位和相对定位有所不同但又有相似之处。下面会结合两个小demo来学习一下我们IOS开发中UI的绝对定位和相对定位。在前面的博客中所用到的UI事例用的全是绝对定位,用我们Storyboard拖拽出来的控件全是绝对定位的,就是我们可以同改变组件的frame来改变组件的位置和大小。而相对定位则不同,相对定位是参考组件周围的元素来确定组件的大小或位置,相对定
lizelu
2018-01-11
2.1K0
IOS开发之视图和视图控制器
        视图(View), 视图控制器(ViewController)是IOS开发UI部分比较重要的东西。在学习视图这一块的东西的时候,感觉和Java Swing中的Panel差不多。在UIKit框架中都有一个UIWindow来容纳我们的View。应用程序中几乎全部的可视控件都是UIView以及UIView的子类的实例,并且UIWindow也是UIView的子类。UIWindow可以不借助于父类视图显示在屏幕上,其余的视图都需要添加到父视图中才能显示。窗口是用来显示视图的,下面我们将会结合着实例来具
lizelu
2018-01-11
1.7K0
IOS开发之简单音频播放器
        今天第一次接触IOS开发的UI部分,之前学OC的时候一直在模拟的使用Target-Action回调模式,今天算是真正的用了一次。为了熟悉一下基本控件的使用方法,和UI部分的回调,下面开发了一个特别简易的音频播放器,来犒劳一下自己这一天的UI学习成果。在用到UI的控件时如果很好的理解之前博客在OC中的Target-Action回调模式,感觉控件的用法会很顺手。下面的简易播放器没有用到多高深的技术,只是一些基本控件和View的使用。         话不多说简单的介绍一下今天的音频播放器。在播放
lizelu
2018-01-11
1.6K0
iOS开发之集成iOS9中的Core Spotlight Framework搜索App的内容
Spotlight在iOS9上做了一些新的改进, 也就是开放了一些新的API, 通过Core Spotlight Framework你可以在你的app中集成Spotlight。集成Spotlight的App可以在Spotlight中搜索App的内容,并且通过内容打开相关页面。因为接到开发任务,老大说让在App中支持Spotlight, 于是又搞了搞苹果的官方文档。可以说,集成Spotlight不算复杂,官网上讲的也挺明白的,今天博客就通过一个Demo来集成一下Spotlight。   苹果官方有关Core
lizelu
2018-01-11
1.4K0
iOS开发之SQLite--C语言接口规范(五)——iOS开发使用SQLite实例
  本篇博客就使用前面操作SQLite的知识来实现如何去插入,删除和更新数据。然后再把操作SQlite数据库常用的方法进行一个封装。把常用方法进行封装后,把Cars数据库中的其中一个表的数据进行查询,并在UITableView上进行展示。因为本实例要对数据库的数据进行modify(修改)操作 ,在iOS系统上呢,为了安全起见,在Bundle中的数据库资源是不允许进行数据的插入修改和删除操作的。在之前的博客中我们只进行了查询操作,所以从Bundle加载数据库资源文件是可行的。   如果对数据库进程insert
lizelu
2018-01-11
1.7K0
iOS开发之SQLite--C语言接口规范(四) —— Result Values From A Query
  数据库的在上一篇博客中《SQLite之C语言接口规范(三)——Binding Values To Prepared Statements》用到了如何从查询结果中取出结果值。今天的博客就详细的介绍一下sqlite3_column_*()的方法。在SQLite数据库C语言接口中,从查询结果中取出不同类型的值需要不同的接口函数。   一. sqlite3_column_*()介绍     1.下图是sqlite3_column_*()所包含的方法,由下图容易的看出取出不同类型的值需要不同的接口函数。可以取出的
lizelu
2018-01-11
8610
iOS开发之SQLite--C语言接口规范(三)——Binding Values To Prepared Statements
  在前面的博客中已经介绍了如何连接SQLite数据库,并且简单的查询和遍历结果集。在前面用到了sqlite3_stmt *stmt,也就是预编译后的SQL语句。在本篇博客中会了解一下sqlite3_stmt,然后了解一下变量的绑定。变量绑定,简单的说就是往预编译后的SQL语句中传入相应的值。   一. sqlite3_stmt 的生命周期   这个对象的实例代表着一个被编译成二进制的SQL语句。每个SQL语句都必须经过预编译转换成sqlite3_stmt才能被执行。在iOS开发中,Application或
lizelu
2018-01-11
1.1K0
iOS开发之SQLite-C语言接口规范(二) —— Prepared Your SQL Statements
  在《SQLite的C语言接口规范(一)》中介绍了如何去连接打开数据库,本篇博客就介绍如何操作数据库,本篇主要给出了如何执行数据库查询语句(Select), 然后遍历结果集。本篇博客就直接使用上一篇博客封装的打开数据库的方法获取到数据库的操作句柄,然后通过这个句柄来操作我们的Sqlite数据库。今天这篇博客中要多Cars.sqlite数据库中的其中一个表进行Select操作。更为细节的东西请参考SQLite官网:http://www.sqlite.org 。   一.预编译SQL语句     要想执行一条
lizelu
2018-01-11
1K0
iOS开发之SQLite-C语言接口规范(一)——Ready And Open Your SQLite
  为什么要搞一搞SQLite的C语言接口规范呢? 因为在做iOS开发中难免会遇到操作数据库的情况,你可以使用第三方的FMDB等,或者使用CoreData。但我们还是有必要去搞清楚如何去使用SQLite的C语言接口来操作SQLite数据库的。从今天开始就给大家结合实例详细的搞一搞SQLite的C语言接口。关于CoreData的东西请看之前的博客《IOS开发之表视图爱上CoreData》。   如果英文好的小伙伴呢,你可以不听我啰嗦,直接官网走起:http://www.sqlite.org 上面的东西是应有尽
lizelu
2018-01-11
1.2K0
iOS开发之ImageView复用实现图片无限轮播
  在上篇博客中iOS开发之多图片无缝滚动组件封装与使用给出了图片无限轮播的实现方案之一,下面在给出另一种解决方案。今天博客中要说的就是在ScrollView上贴两个ImageView, 把ImageView进行交替切换来实现图片的无限轮播,在轮播时去修改ImageView上的图片。上一篇博客中是有几张图片就实例化几个ImageView, 然后事先把Image贴到相应的ImageView上,这种做法比较简单,而且易于实现。   今天这篇博客就要实现使用两张ImageView, 交替的区展示Image, Im
lizelu
2018-01-11
1.9K0
iOS开发之多图片无缝滚动组件封装与使用
  经常有园友会问"博主,有没有图片无限滚动的Demo呀?", 正儿八经的图片滚动的Demo我这儿还真没有,今天呢就封装一个可以在项目中直接使用的图片轮播。没看过其他iOS图片无限轮播的代码,也不了解他们的原理,我今天封装这个图片无限轮播是借鉴Web前端中的做法,因为之前写Web前端的时候,实现幻灯片就是这么做的,今天就在iPhone上搞搞。下面的东西是自己写的了,关于轮播的东西这个开源项目也是相当不错的https://github.com/nicklockwood/iCarousel ,感兴趣的可以看一下
lizelu
2018-01-11
1.7K0
iOS开发之使用Storyboard预览UI在不同屏幕上的运行效果
  在公司做项目一直使用Storyboard,虽然有时会遇到团队合作的Storyboard冲突问题,但是对于Storyboard开发效率之高还是比较划算的。在之前的博客中也提到过,团队合作使用Storyboard时,避免冲突有效的解决方法是负责UI开发的同事最好每人维护一个Storyboard, 公用的组件使用轻量级的xib或者纯代码来实现。这样不但提高了开发效率,而且可以有效的避免Storyboard的冲突。如果每个人维护一个Storyboard, 遇到冲突了就以你自己的为准就OK了。   言归正传,接下
lizelu
2018-01-11
2.2K0
iOS开发之遍历Model类的属性并完善使用Runtime给Model类赋值
  在上篇博客《iOS开发之使用Runtime给Model类赋值》中介绍了如何使用运行时在实体类的基类中添加给实体类的属性赋值的方法,这个方法的前提是字典的Key必须和实体类的Property Name相同,然后通过运行时来生成和执行Setter方法给Model类的属性赋值。   通过Runtime来给Model类属性赋值的好处是多多的,它便于代码的后期维护,并且提高了开发效率。当你拿到解析后的字典时你不用一个一个的通过key去把字典的值赋值给相应的Model类的属性,本篇博客中会给出如何去遍历Model中
lizelu
2018-01-11
2K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档