孙先森的博客

记录自己开发的点点滴滴——新手上路 请多指教

使用react-native-camera库时一些错误解决办法

项目添加react-native-camera库时的各种报错解决办法 1.Could not resolve project :react-native-camera 明明已经添加了却老师报could not resolve 解决办法: 在app下的build.gradle中添加一行代码 andr...

2019-08-05 15:27:46

阅读数 21

评论数 0

React Native拖拽删除Demo(触摸事件)

最近学习了下ReactNative中的触摸事件,写个例子实践一下。 Demo效果: 当触摸红球时开始触发事件,红球随着手指移动改变位置,松开时回到原位,如果拖入蓝色区域则删除(隐藏),单击左上方按钮红球显示在原位置。 主要是利用了View触摸函数onResponderMove(触摸屏幕并且移动)...

2019-08-03 14:51:39

阅读数 27

评论数 0

React Native中使用Redux

记录一下自己学习使用Redux的过程: 通过一个简单的Demo理解什么是Redux。个人觉得Redux最大的优势在于没有任何关联(没有嵌套,没有父子组件关系)的两个页面,可以在任意一个页面操作其他界面的state。 功能很简单,单击“+”或“-”,数值对应的增加或者减少。 单击+或者-时不去直...

2019-08-03 11:17:08

阅读数 19

评论数 0

React Native实现仿抖音视频列表(滑动切换)

实现思路: 视频播放采用react-native-video,非常好用的视频播放库,列表整体采用FlatList实现,每一个item都占一整屏(flex设为1),再给FlatList设定pagingEnabled属性(滑动滚动一屏),viewabilityConfig中设定可见区域滑动的阈值。 效...

2019-07-18 18:15:34

阅读数 1129

评论数 0

React Native实现扫描二维码功能基于react-native-camera

react-native-camera是一个非常好用的RN调用摄像头的第三方库,github地址: https://github.com/react-native-community/react-native-camera 使用的时候有几处坑,在这里记录一下开发过程,首先效果图: 使用时先安装依...

2019-07-10 18:16:04

阅读数 122

评论数 0

React Native实现类似原生Android中ViewPage+TabLayout

实现思路:Tab部分采用ScrollableTabView+ScrollableTabBar,切换的页面可以封装成一个可以复用的。 效果图: 代码如下: 首先安装第三方库 npm install react-native-scrollable-tab-view --save Scrollabl...

2019-07-09 18:00:38

阅读数 43

评论数 0

React Native标签选择筛选自定义控件

记录下自己开发遇到的需求,效果图如下: 自定义标签控件(代码是图一样式的,单击会高亮显示),代码如下: renderKeyView = (data) => { //console.log('数据源',data); return ( ...

2019-07-09 17:49:00

阅读数 62

评论数 0

Error: Activity class {com.xxx/com.xxx.MainActivity} does not exist

我在导入别人的RN项目之后运行时报如下错误: 解决办法: 用AS打开android文件夹,检查build.gradle中的applicationId与AndroidManifest.xml中的package的值是否一样,若不一样修改成一致的,再次运行即可。 ...

2019-07-05 13:19:18

阅读数 25

评论数 0

ReactNative调用原生封装的代码和控件

文章目录1.RN调用Android原生封装的代码2.RN引用Android的控件以及传递参数 1.RN调用Android原生封装的代码 首先在AS中新建一个类继承自ReactContextBaseJavaModule 代码如下: public class TestNativeModule exte...

2019-07-04 09:49:34

阅读数 58

评论数 4

ReactNative中React-navigation嵌套使用

首先需要在终端输入install命令安装react-navigation,以及link本地依赖关系: npm install --save react-navigation react-native link react-native-gesture-handler 下面实现的是StackNav...

2019-07-01 09:08:05

阅读数 91

评论数 0

ReactNative组件的生命周期

最近在学习RN开发,总结下组件的生命周期,直接用下面一段组件的代码来展示一下: export default class ComponentName extends Component{ //props state 初始化和设置 getDefaultProps(){ } ...

2019-06-27 16:31:17

阅读数 19

评论数 0

Android 定时任务

Handler handler = new Handler(); Runnable runnable = new Runnable() { @Override public void run() { new Thread(new Ru...

2019-05-31 15:58:13

阅读数 69

评论数 0

Android recyclerview上拉加载更多

记录一下视频列表(recyclerview)上拉显示一个“加载更多”的item,然后加载数据。 效果图: 实现思路: 1.写两个item布局,一个用来展示数据,一个用来展示加载中也就是滑到最下方的时候显示的“加载更多”。 2.在adapter中写两个viewholder,对应两个xml文件。 3...

2019-05-31 14:59:04

阅读数 161

评论数 0

Android第二次面试总结

Activity生命周期 释放资源在哪个方法,恢复数据在哪个方法 广播的使用,生命周期 两种广播的区别 程序的保活,收到一条通知(程序未打开)单击要跳转到一个页面怎么实现 service的使用,启动和关闭,生命周期 fragment的生命周期 多线程的通信方式,多进程的通信方式 bundle可以传...

2019-05-31 11:09:35

阅读数 155

评论数 0

Android 锁屏后Service服务保活(支持9.0)

最近遇到个问题: 后台Service启动正常启动后,锁屏状态下大概80秒左右Service就被暂停了(并没有被杀死),唤醒屏幕后就继续执行。网上搜了很多办法不好用知道看到一篇文章Service和Notification 给我提供了解决思路和解决办法。 解决思路: Service启动时创建一条通知...

2019-05-24 17:43:25

阅读数 932

评论数 0

Android 自定义Dialog

自定义Dialog: public class MyDialog extends Dialog implements View.OnClickListener { private Context context; private int layoutResID;//布局文件id ...

2019-05-20 17:43:44

阅读数 19

评论数 0

Can't create handler inside thread Thread[Thread-37,10,main] that has not called Looper.prepare()

报错原因可能是以下几种情况: 不是在主线程中开启了新的线程 异步操作中执行UI显示(在异步操作中调用UI函数,如Toast) 解决办法:在你的报错的行数的逻辑前后加上 Looper.prepare(); ... ToastUtils.show("这是一条Toast"); ....

2019-05-20 17:00:13

阅读数 41

评论数 0

Android 代码混淆记录

代码混淆记录: 首先在app.gradle中设置混淆: buildTypes { release { debuggable true //设置混淆 minifyEnabled true ...

2019-05-16 11:05:02

阅读数 26

评论数 0

Android 拦截频繁点击事件

使用场景:如果一个按钮的逻辑有跳转activity功能(activity由于业务逻辑不能修改启动模式),此时快速单击两下按钮,会弹出两个相同的页面(网络请求也通用) 解决思路:获取两次单击事件的时间差,在dispatchTouchEvent中判断。 代码如下: private long last...

2019-05-15 10:52:37

阅读数 137

评论数 0

Android ShareSDK快速实现QQ分享功能

前言 要集成QQ分享,首先需要去QQ开放平台注册成为开发者,然后创建应用获得到应用对应的appkey和appSecret才能在ShareSDK中分享 为什么没有微信分享,因为微信上传应用审核必须要有官网才能通过(我官网填www.baidu.com审核不通过) 效果图: QQ开放官网:https:...

2019-05-10 18:50:21

阅读数 128

评论数 0

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