React Native系统组件(二)

点击组件TouchableOpacity

1,

activeOpacity是0-1的值,表示点击的时候不透明度的变化范围。

如果值是0.3,那么点击的时候透明度的变化范围就是0.3-1

2,

delayLongPress={1000}表示长按一秒中才会出发长按事件

3,

点击事件执行的顺序是:onPressIn->onPressOut->onPress

长按事件执行的顺序是:onPressIn->onLongPress->onPressOut

TouchableHighlight

1,

2,必须要有子组件

3,

4,

underlayColor:表示按钮按下去的颜色。

几乎不用的TouchableWithoutFeedback按钮


这里的styles.button2不生效。

Button

1,

这里的style也不生效。

Pressable 新版本提供,功能强大

1,

2,

按下去后背景是白色的,没有按下去的时候背景是蓝色的(#2030FF),这就是带样式的状态。

子节点也可以带状态

ScrollView

1,

固定子元素渲染

列表渲染,必须用key

View数组渲染,也必须有key

2,


3,

属性为none的时候,滚动ScrollView不会键盘消失

属性为on-drag的时候,滚动键盘消失

interactive只在iOS生效

4,

当为never的时候,点击输入框以外的地方,键盘消失,always键盘不消失,且输入框不失去焦点,handled与never类似,区别是当ScrollView有一个TextInput和Button两个子组件的时候,如果是never,点击Button,第一次点击会收起键盘,但Button不执行onpress()回调。只有当键盘收起后再次点击Button,才会执行onPress()。有键盘的时候button获取不到焦点。

当值为handled时候,键盘弹出的情况下点击按钮,按钮会执行onPress()同时键盘不收起。

5,

当我们按住scrollview滚动的时候,onMomentumScrollBegin回调是不执行的,松手的刹那,才会执行

6,

监听页面的滚动距离

NativeEvent就是桥接原生的。

如果要监听y轴的滚动距离

IOS需要增加scrollEventThrottles属性,

16表示每隔16毫秒回调一次onScroll。1-16效果是一样的,因为每16毫秒绘制一帧

7,

当为always时候,滚动到头的时候,会有轻微上移动,当为never的时候,滚动到头后继续滚动没有任何效果

8,

整页整页的滚动

可以实现轮播图效果

9,

false的时候无法滚动

10,

加载ScrollView的时候,y轴默认滚动100

11,

当为false的时候,不显示滚动条

12,

表示滚动的时候第0个元素吸顶。

13,



相关推荐
摸鱼仙人~2 小时前
Vue Todo 实战练习教程(简略版)
前端·javascript·vue.js
弓.长.2 小时前
ReactNative for OpenHarmony项目鸿蒙化三方库:react-native-video — 视频播放组件
react native·音视频·harmonyos
FlyWIHTSKY2 小时前
Vue 3 单文件组件加载顺序详解
前端·javascript·vue.js
周万宁.FoBJ2 小时前
vue源码讲解之 reactive解析(仅proxy部分)
开发语言·javascript·ecmascript
乔磊2 小时前
我开发了一个 Ralph CLI
javascript
yzin2 小时前
【源码】【react】useCallback、useMemo、memo 原理
前端·react.js
进击的尘埃2 小时前
Module Federation 2.0 共享策略翻车实录:版本协商、热更新与依赖冲突的排查工具链
javascript
码路飞2 小时前
不会 Rust 也能玩 WebAssembly:3 个 npm install 就能用的 WASM 神器
前端·javascript·webassembly
Sylus_sui2 小时前
鸿蒙Class实战:从零构建联系人列表
javascript