
react-native
七月_代码君
iOS开发,React Native跨平台开发
展开
-
Xcode安装ipa包
在xcode页面,选择Window -> Devices and Simulators原创 2018-04-27 16:29:02 · 1967 阅读 · 0 评论 -
React Native 电商五星好评封装
import React, { Component, PropTypes } from 'react'import { View, StyleSheet, TouchableOpacity, Image,} from 'react-native';export default class StarRating extends Component { sta原创 2017-10-26 10:37:24 · 949 阅读 · 0 评论 -
React Native 购物车数量红色小角标封装
import React, {Component} from 'react';import { StyleSheet, View, Dimensions, Text} from 'react-native';const {width, height} = Dimensions.get('window');//模块声名并导出export default cla原创 2017-10-26 11:10:06 · 2651 阅读 · 3 评论 -
React Native 富文本封装
import React, {Component} from 'react';import { StyleSheet, View, Dimensions, TouchableOpacity, TextInput, Platform, Text} from 'react-native';const {width, height} = Dim原创 2017-10-31 11:49:45 · 4122 阅读 · 2 评论 -
React Native iOS打包配置和打包
配置: 在package.json中的scripts加入 “start”: “node node_modules/react-native/local-cli/cli.js start”, “bundle-ios”: “node node_modules/react-native/local-cli/cli.js bundle –entry-file index.ios.js –pla原创 2017-10-25 10:10:39 · 528 阅读 · 0 评论 -
React Native 安卓打包并安装到手机
打包apk $ cd 项目根目录下的android文件夹路径然后执行下面的语句 $ ./gradlew assembleRelease 以上两部就将安卓的apk包安装好了 其实你如果需要找到apk包,找到项目的android-app-build-outputs-apk安装apk包到手机 $ cd $ANDROID_HOME接下来 $ cd platform-tools安装原创 2017-10-25 10:06:03 · 779 阅读 · 0 评论 -
React Native Mac配置安卓环境
配置Android环境变量在终端中输入命令,进入用户目录 $ cd ~输入命令,该命令的作用是如果不存在.bash_profile文件,则创建该文件 $ touch .bash_profile输入命令,该命令的作用是用文本编辑器TextEdit打开.bash_profile文件。如果你是第一次配置环境变量,则该文档应该是空的。 $ open -e .bash_profile复制下面原创 2017-10-25 09:55:24 · 223 阅读 · 0 评论 -
React Native 解决Image 圆角在安卓上面没效果
使用roundAsCircle={true}这个属性,可以解决安卓系统圆角没效果问题<Image roundAsCircle={true} resizeMode={'stretch'} style={{ width: 70, height: 70, borderRadius: 35}} source={require('../img/mine/ic_defa原创 2017-10-24 16:32:45 · 6441 阅读 · 1 评论 -
React Native 使用try catch解决TextInput输入的时候中文状态下崩溃的原因
项目中使用自提码,输入第一个的时候需要自动聚焦到第二个TextInput,然而找了外国人的一个组件:react-native-confirmation-code-input但是, 这个输入框输入中文或者其他语言,键盘上面有候选字符串的时候,会出现崩溃的情况。于是在,项目中使用try catch完美解决下面贴上人家组件封装的源码:import React, {Component} from 'reac原创 2017-11-17 11:46:51 · 2976 阅读 · 0 评论 -
React Native ListView列表多个数据源和状态机,取值,刷新状态机
constructor(props) { super(props); this.dataSource = Array(2).fill( new ListView.DataSource({ /*判断这两行是否相同,就是是否发生变化,决定渲染哪些行组件,避免全部渲染,提高渲染效率*/原创 2017-11-14 17:09:24 · 422 阅读 · 0 评论 -
React Native 封装金额自动保存两位小数组件
import React, { Component } from 'react';import { StyleSheet, View, Dimensions, Text} from 'react-native';import { Widget } from 'rn-yunxi';const { width, height } = Dimensions.get(原创 2017-11-29 10:43:09 · 4071 阅读 · 0 评论 -
Xcode archive闪退
点击Xcode - Preference 取消Source Control 的勾选项原创 2018-04-26 19:49:41 · 846 阅读 · 0 评论 -
React-Navigation 指定跳转到某个页面
两种跳转的情况通过路由一层层跳转从A-B-C-D, 最好从D-A (从第二个页面开始传递参数)从A开始跳转到B,在B页面跳转至C页面的时候需要传递参数keythis.props.navigation.navigate('C', {key: this.props.navogation.state.key})从C跳转到D页面 const {params} = this.pro...原创 2018-04-23 15:01:28 · 5375 阅读 · 1 评论 -
React Native 适配iPhone X
项目中,使用react-navigation和自定义Header,这样保证iOS和安卓显示的Header显示一样navigation的头部高度为,sizeHeader=84, 头部内容为,sizeHeaderContent=44, 解决屏幕的高度问题,这时候直接在AppDelegate中实现 self.window = [[UIWindow alloc] initWithFrame:C原创 2017-12-04 14:11:43 · 2068 阅读 · 1 评论 -
React Native 多个列表共用一个ListView
多个列表共用一个ListView,导致切换Tab的时候,数据源没有及时切换,在下一个tab上面显示上一个tab的数据源。 多个列表共用一个ListView写法,数据源根据放入一个数组中,Tab切换的时候获取指定下标的数据源,状态机也是。解决思路: 先置空数据源,然后再将数据源cloneWithRows, 因为我们本地状态机保存了dataArray数组。本文只记录思路,很多是封装好的组件和一些头文件导原创 2017-11-28 10:33:05 · 1207 阅读 · 0 评论 -
React Native 解决Text在iOS、android中更改字体变大,导致项目文字变大布局错乱
项目强制不允许项目字体变大,重写Text的属性allowFontScaling={false}原创 2017-10-24 16:56:48 · 3168 阅读 · 0 评论 -
React Native 导出项目全局共用组件的模块
因为之前的一个地址挑选器被里面有这样的导出方式被网友察觉,然后私下问了我,怎么导出这样的模块的import { ReactNavComponent, Widget, Util } from 'rn-yunxi';const { RegexpUtil, StorageUtil } = Util;const { Button, Text } = Widget;写一篇文章,希望对大家有用: 首先原创 2017-11-15 11:59:23 · 2234 阅读 · 3 评论 -
React Native 全局属性和方法,全局Log, Api网络请求,全局样式
在index.ios.js或者index.android.js,导出项目import { AppRegistry,} from 'react-native';import Root from './store/Root';AppRegistry.registerComponent('Project', () => Root);在Root.js文件中import './Global';原创 2017-11-14 17:34:43 · 7879 阅读 · 3 评论 -
React Native 截取后端数据返回Html标签中的值
import React, { Component } from 'react';import { StyleSheet, View, Dimensions, Text} from 'react-native';import { Widget } from 'rn-yunxi';const { width, height } = Dimensions.get(原创 2017-11-15 10:04:03 · 2693 阅读 · 0 评论 -
React Native 利用自定义button封装购物车计数器
本文button见我的博客 button使用button,简单封装一个购物车计数器import React, { Component } from 'react';import { StyleSheet, View, Text, Dimensions} from 'react-native';import Button from '../button';c原创 2017-10-24 17:15:14 · 1382 阅读 · 0 评论 -
React Native 封装自定义的Button
自定义Buttonimport React, { Component } from 'react';import { StyleSheet, View, Dimensions, TouchableOpacity, TouchableHighlight} from 'react-native';import Text from '../text';//模原创 2017-10-24 17:03:10 · 1559 阅读 · 0 评论 -
React Native 通告消息竖向轮播组件封装
import React, {Component} from 'react'import { Text, View, Animated, Easing, StyleSheet,} from 'react-native'export default class ScrollVertical extends Component { static def原创 2017-10-24 15:16:01 · 3898 阅读 · 2 评论 -
React Native 使用Redux全局共享state
一直想将项目中使用的redux,写成一篇博客,但是又碍于对Redux的掌握能力有限,只能在项目完结的时候,稍稍整理一下redux在项目中全局获取 用户的信息,从用户登录,到修改用户信息,和退出登录全局使用Redux进行保存用户信息,修改用户信息,清空用户信息,一套小小的入门代码。 项目中redux基于react-navigation,可做到: 某个组件的状态,需要全局共享 某个状态需原创 2017-10-26 15:43:11 · 2707 阅读 · 0 评论 -
React Native 原生RN嵌套webView,并自适应高度
封装自适应高度的webViewimport React, { Component } from 'react';import { Text, WebView, ScrollView, PixelRatio, View, Platform, ActivityIndicator,} from 'react-native';let thisWeb原创 2017-09-20 11:03:24 · 2952 阅读 · 0 评论 -
React Native AsyncStorage本地存储工具类
利用react-native组件AsyncStorage,通过promise,保存本地数据import {AsyncStorage} from 'react-native';export default class StorageUtil { /** * 保存一个Json对象 * @param key * @param value * @param c原创 2017-09-10 11:45:03 · 676 阅读 · 0 评论 -
React Native scrollView下拉布局偏移
利用contentInset 和 contentOffset 实现ScrollView下拉布局偏移 <ScrollView style={{flex:1}} contentInset = {{top: -300}} contentOffset = {{y:300}}> <Image style={{height: Constant.scale(20原创 2017-09-27 12:04:44 · 1359 阅读 · 0 评论 -
React Native 启动页广告图预加载
Image.prefetch 加载图片进行本地保存,下次进入的时候,判断是否本地数据是否有值,有值的话使用上次加载的图片,没有的话,则使用本地默认的图片 。因为每个人的封装不一样,只能大致交流一下思路,不足之处望海涵!!! componentDidMount() { // 获取本地数据, 如果有值的时候将广告 Api.getLocalWelcomeImg().the原创 2017-09-10 12:33:56 · 3157 阅读 · 0 评论 -
React Native 字符串加密 base64
class EncryptUtil{ static rstr2b64(input) { try { b64pad } catch (e) { b64pad = ''; } let tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; let output原创 2017-09-10 11:31:41 · 1983 阅读 · 0 评论 -
React Native 时间转换格式工具类
class DateUtil{ /** * 例如:2017-06-28 10:48:46转成date类, * 可把- replace成/ * @param dateString * @return Date */ static parserDateString(dateString){ if(dateString){原创 2017-09-10 11:26:57 · 4251 阅读 · 0 评论 -
React Native 解决RenderRow只渲染一次
数据源判断, rowHasChanged的时候数据源可变 let ds = new ListView.DataSource({ rowHasChanged: (r1, r2) => (r1, r2) => { return r1 !== r2; } });状态机声明一个数组保存每次。请求下来的数据,利用c原创 2017-09-25 18:09:01 · 1638 阅读 · 0 评论 -
React Native ListView上拉刷新,下拉加载刷新,并添加网络无数据时的缺省图
import React, { Component } from 'react';import { StyleSheet, View, Dimensions, ListView, TouchableOpacity, Text, RefreshControl} from 'react-native';const { width, height原创 2017-10-26 16:31:06 · 427 阅读 · 0 评论 -
React Native 自定义modal
基于github上的react-native-root-siblings 封装的一个modal组件modal组件不再是React Native上的Modal组件,不需要通过状态机的方式来隐藏和展示布局/** * 基于 react-native-root-siblings 封装的一个modal组件 * 可自定义View * Toast.show(<View />) * Toast.h原创 2017-09-19 16:35:29 · 3230 阅读 · 0 评论 -
React Native 广告,验证码倒计时工具类
因为以前直接用定时器,没去计算当前的时候,每次退出程序的时候,定时器一直不走,这个工具类简单的解决程序退出后台,定时器不走的bug,那么,直接上代码咯~~/** * Created by zhuang.haipeng on 2017.9.11 * * 广告倒计时,验证码倒计时工具类 * * 用法: //60 * 1000 为60秒 , 60 * 60 * 100 为60分钟 ...原创 2017-09-11 17:04:37 · 617 阅读 · 3 评论 -
React Native 二维码扫描ios(原生交互)
二维码扫描并且与iOS原生交互,github上导入iOS二维码的库https://github.com/kingsic/SGQRCode1、新建一个以RCT开头的.h文件#import <UIKit/UIKit.h>#import <React/RCTBridgeModule.h>@interface RCTYunXiQRCode : UIViewController<RCTBridgeModul原创 2017-10-27 17:26:34 · 610 阅读 · 0 评论 -
React Native 省市区地址选择器(仿京东)
产品经理:“你明白吧,这里向右划可以出菜单,然后需要一个闪烁的动画,还有,我想这个tab可以拉下来,你懂吧? 设计师:“别废话,把你要抄的产品给我看下。” … 接下来,我们仿一下别人家的地址挑选器 省市区数据格式的json文件项目基于react-native-scrollable-tab-view 组件编写,https://github.com/skv-headless/react-nativ原创 2017-10-24 16:19:55 · 6776 阅读 · 9 评论 -
React Native 不规则cell渲染布局
/** * Created by zhuang.haipeng on 2017/10/24. */import React, {Component} from 'react';import { View, TouchableOpacity, ListView, Dimensions, Image, Text} from 'react-nati原创 2017-10-24 11:06:50 · 852 阅读 · 0 评论 -
React Native TableViewCell封装
iOS上TableViewCell在开发中很是常见,所以对cell的封装很有必要。import React, { Component } from 'react';import { StyleSheet, View, Image, Dimensions, TouchableNativeFeedback, TouchableOpacity, P原创 2017-10-31 10:47:24 · 1095 阅读 · 0 评论 -
React Native 文件“launchPackager.command”无法执行,因为您没有正确的访问权限。
launchPackager.command没有执行权限 $ chmod 755 /Users/huieryun/Work/newretail-o2o-mobile/node_modules/react-native/packager/launchPackager.command $ chmod 755 /Users/huieryun/Work/newretail-o2o-mobile/nod原创 2017-10-30 15:26:34 · 16359 阅读 · 0 评论 -
React Native ./gradlew clean 提示Permission denied
直接打开终端,改变文件权限 $ chmod +x gradlew原创 2017-10-30 15:33:24 · 1148 阅读 · 0 评论 -
React Native 友盟分享和第三方登录iOS(与原生交互)
友盟分享和第三方登录配置的文档点我看友盟官方文档1、首先我们需要在xcode中新建一个文件夹, 里面放置RCTUmengShare.h和RCTUmengShare.m文件.h文件中的代码#import <Foundation/Foundation.h>#import <React/RCTBridgeModule.h>@interface RCTUmengShare : NSObject<RCTB原创 2017-10-25 10:41:53 · 1383 阅读 · 0 评论