1、以前做Listview 的时候都会有一个滚动条,不由分说,很丑,以前想要去掉却无从下手,
今日偶然发现Scrollview有两个属性
showsHorizontalScrollIndicator bool
当此属性为true的时候,显示一个水平方向的滚动条。
showsVerticalScrollIndicator bool
当此属性为true的时候,显示一个垂直方向的滚动条。
一定要记得试一下。果然有用,验证成功。
2、一些简洁的代码语法老会忘记怎么写,现发现一条就记录一条
<View style={[styles.innerContainer, {marginBottom:47}]}></View>
<Text style={{color:‘red‘}}>{this.state.second>=0?this.state.second:‘重发验证码‘}</Text>
<Text style={this.state.selectstate==0?styles.presstextnianfen:styles.textnianfen}>全部</Text>
<Image source={rowData.currentscore>1?require(‘../home/icon_star_yellow.png‘):require(‘../home/icon_star_grey.png‘)} style={{width:15,height:15,marginRight:2}}/>
<View style={{width:150,height:150,backgroundColor:this.state.selectcenterstate[rowID]==0? "#E9E6E6":"#D2EDF6",borderRadius:5,flexDirection:‘column‘}}>
3、关于如何在pop页面后触动更新的问题
一个很好的解决办法从A页面push到B页面,传一个刷新的函数过去,这样从B页面pop回A页面的同时,调用该函数。
例如A页面代码:回调函数中传一个刷新的函数fetchstorise()
pusheditcenter(talkmsg){ let _this = this; this.props.navigator.push({ name:‘editcenter‘, component:TrainerselfCenterEdit, params:{ talkmsg:talkmsg, getparams: function(){ _this.fetchStories(); } } }) }
B页面代码,在pop的时候调用该回调函数
pushback(){ const { navigator } = this.props; if(this.props.getparams) { this.props.getparams(); } if(navigator) { //出栈,返回到上一页 navigator.pop(); } }
4、关于如何使用定时器
写这个的原因是因为RN的发展速度过快,语法变,使用方法也相应改变,现在这里使用最新的es6的语法
componentDidMount(){ this.timer=setTimeout( ()=>{ this.setState({content:‘这是定时器打印的内容‘ }) },2000 ); this.timer_two=setTimeout( ()=>{ this.setState({msg:‘这是定时器打印的第二段内容‘}) },4000 ); } componentWillUnMount(){ this.timer&&clearTimeout(this.timer); this.timer_two&&clearTimeout(this.timer_two); } render() { return ( <View style={{margin:20}}> <Text>{this.state.content}</Text> <Text>{this.state.msg}</Text> </View> ); }
注意:定时器功能比较简单,注意在es6中使用时,需铭记在unmount组件时清除(clearTimeout/clearInterval)所有用到的定时器。
时间: 2024-08-03 23:23:05