06|Pressable:如何实现一个体验好的点按组件?
- 深入了解
- 翻译
- 解释
- 总结
本文深入介绍了React Native中实现一个体验好的点按组件的方法和原理。作者围绕点按组件的设计与用户体验的关系展开讲解,讨论了在设计优秀通用组件时如何在用户体验和开发者体验上找到平衡。文章重点介绍了第三代Pressable组件的设计特点和使用方法,以及如何实现点击和长按事件的识别。此外,还强调了点按组件为什么需要支持用户中途取消点击的重要性。通过对不同版本点按组件的设计思路和实现方式的比较,读者可以了解如何在React Native中实现一个体验好的点按组件,同时也能借助它背后的设计原理,更“懂”用户,提升产品的用户体验。文章内容涵盖了技术原理和实际应用,对于React Native开发者和用户体验设计者都具有一定的参考价值。文章还介绍了盒模型区域、可触发区域HitRect和可保留区域PressRect的关系,以及如何通过设置Pressable组件的可触发区域HitSlop和可保留区域PressRect来提高用户点击的成功率和取消点击操作。总的来说,本文为读者提供了实现优秀点按组件的方法和原理,以及如何在React Native中提升用户体验的技术指导和实践建议。
《React Native 新架构实战课》,新⼈⾸单¥59
全部留言(12)
- 最新
- 精选
- dao透明度会重新变为 1 ?应该是不透明度变为 1 吧。
作者回复: 你是对的。 本文把 opacity 翻译成了透明度,但我查阅资料和思考确认后认为 opacity 更准确的翻译确实是不透明度。 国内资料很多资料都把 opacity 翻译成了透明度,可能是因为更贴合中文思维一些不用绕一下,我也被误导了。 参考 MDN 文档: https://developer.mozilla.org/zh-CN/docs/Web/CSS/opacity
2022-04-144 - python4我按官网的顺序看的, 所以用了Touchble做按钮. 看到这里才知道按钮的最佳实践, 官网顺序有点坑啊
作者回复: 官网的是文档用来查的,对初学者入门确实不友好。
2022-04-192 - 小天儿作业二:个人感觉是因为手指与鼠标的差异,手指点击的范围更大,不似鼠标那么精准,所以就要添加防误触的处理逻辑(不能在第一时间进行处理,以方便用户取消),而双击手势,在移动端并不常用(我猜可能是因为两次点按的位置大概率会有偏移,提高了操作成本)
作者回复: 给认真思考的同学点赞👍 正确答案在 16 讲中有解释,可以参考一下。
2022-05-141 - 浩明啦想问一下,ios 里按钮组件点按出现轻微震动的效果2022-07-161
- 大神博士可保留区域 默认与 可触发区域一样大吧?2022-07-051
- 涂海生能不能多提供些 demo 和项目,可以多学习代码规范和用法2022-06-181
- demoker老师 可不可以单独出一节分享一下前端开发者提效的用法,作为一个原生开发者来说,希望学了课程之后可以少走弯路。2023-12-17归属地:北京
- Geek_ca7af81.Pressable组件可以通过style样式的pressed参数来区分设置点击的样式和非点击的样式 2.Pressable的扩大点击区域,可以通过其HitSlop属性来实现 3.Pressable的允许用户点击button后并且及时取消button的点击(允许用户反悔),可以通过PressRetentionOffset属性来设置,当手指最后touch屏幕的点不在PressRect之间的话,就不会触发点击操作。2023-09-25归属地:上海
- Wcly👺如果从TouchableWithoutFeedback直接替换成Pressable组件,要注意样式上的差异2022-11-21归属地:广东
- 大神博士Pressable 默认带动画吗2022-05-24