}

}

const styles = StyleSheet.create({

bigblue:{

color:‘blue’,

fontWeight:‘bold’,

fontSize:30,

color:‘red’,

}

});

六 高度与宽度


指定宽高

在样式中指定固定的width和height。React Native中的尺寸都是无单位的,表示的是与设备像素密度无关的逻辑像素点。(dp)

<View style={{width: 50, height: 50, backgroundColor: ‘powderblue’}} />

弹性宽高(Flex)

在组件样式中使用flex可以使其在可利用的空间中动态地扩张或收缩。一般而言我们会使用flex:1来指定某个组件扩张以撑满所有剩余的空间

组件能够撑满剩余空间的前提是其父容器的尺寸不为零。如果父容器既没有固定的width和height,也没有设定flex,则父容器的尺寸为零。其子组件如果使用了flex,也是无法显示的。

此时子控件除非强制制定width height 才能显示

// 试试去掉父View中的flex: 1

// 则父View不再具有尺寸,因此子组件也无法再撑开。

// 然后再用height: 300来代替父View的flex: 1试试看?

<View style={{flex: 1}}>

<View style={{flex: 1, backgroundColor: ‘powderblue’}} />

<View style={{flex: 2, backgroundColor: ‘skyblue’}} />

<View style={{flex: 3, backgroundColor: ‘steelblue’}} />

七 使用Flexbox布局


flexDirection(方向) justifyContent(主轴分布方式) alignItems(次轴分布方式)

使用flexbox规则来指定某个组件的子元素的布局

一般来说,使用flexDirection、alignItems和 justifyContent三个样式属性就已经能满足大多数布局需求。译

React Native中的Flexbox的工作原理和web上的CSS基本一致,当然也存在少许差异。首先是默认值不同:flexDirection的默认值是column而不是row,而flex也只能指定一个数字值。

Flex Direction

在组件的style中指定flexDirection可以决定布局的主轴。子元素是应该沿着水平轴(row)方向排列,还是沿着**竖直轴(column)**方向排列呢?默认值是竖直轴(column)方向。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

// 尝试把flexDirection改为column看看

<View style={{flex: 1, flexDirection: ‘row’}}>

<View style={{width: 50, height: 50, backgroundColor: ‘powderblue’}} />

<View style={{width: 50, height: 50, backgroundColor: ‘skyblue’}} />

<View style={{width: 50, height: 50, backgroundColor: ‘steelblue’}} />

Justify Content(主轴)

在组件的style中指定justifyContent可以决定其子元素沿着主轴的排列方式。子元素是应该靠近主轴的起始端还是末尾段分布呢?亦或应该均匀分布?对应的这些可选项有:flex-start、center、flex-end、space-around以及space-between

和Android新出的ConstraintLayout很相似是不是,因为ConstraintLayout就是模仿flexible 布局的产物

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

/ 尝试把justifyContent改为center看看

// 尝试把flexDirection改为row看看

<View style={{

flex: 1,

flexDirection: ‘column’,

justifyContent: ‘space-between’,

}}>

<View style={{width: 50, height: 50, backgroundColor: ‘powderblue’}} />

<View style={{width: 50, height: 50, backgroundColor: ‘skyblue’}} />

<View style={{width: 50, height: 50, backgroundColor: ‘steelblue’}} />

Align Items(次轴)

在组件的style中指定alignItems可以决定其子元素沿着次轴(与主轴垂直的轴,比如若主轴方向为row,则次轴方向为column)的排列方式。子元素是应该靠近次轴的起始端还是末尾段分布呢?亦或应该均匀分布?对应的这些可选项有**:flex-start、center、flex-end以及stretch。**

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可参考[布局样式属性]:http://reactnative.cn/docs/0.44/layout-props.html

八 处理文本输入


TextInput是一个允许用户输入文本的基础组件。

它有一个名为onChangeText的属性,此属性接受一个函数,而此函数会在文本变化时被调用。

另外还有一个名为onSubmitEditing的属性,会在文本被提交后(用户按下软键盘上的提交键)调用。

“`

class PizzaTranslator extends Component {

constructor(props) {

super(props);

先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以扫码领取!!!!

最后

下面是辛苦给大家整理的学习路线


《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可免费领取!

取!!!!

最后

下面是辛苦给大家整理的学习路线

[外链图片转存中…(img-dy1Wh568-1711249699195)]
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可免费领取!

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐