跳到主要内容
版本:0.84

改善用户体验

配置文本输入

在触摸屏手机上输入文本是一项挑战——屏幕很小,还有软件键盘。但根据你需要的数据类型,通过正确配置文本输入,可以让它更容易使用:

  • 自动聚焦第一个字段
  • 使用占位文本作为所需数据格式的示例
  • 启用或禁用自动首字母大写和自动更正
  • 选择键盘类型(例如电子邮件、数字)
  • 确保回车按钮会聚焦下一个字段或提交表单

查看 TextInput 文档 以了解更多配置选项。

键盘可见时管理布局

软件键盘会占据屏幕将近一半。如果你有可能被键盘遮挡的交互元素,请使用 KeyboardAvoidingView 组件 确保它们仍可访问。

让可点击区域更大

在手机上按按钮时,很难做到非常精确。请确保所有可交互元素的尺寸至少为 44x44。实现这一点的一种方法是为元素留出足够空间,paddingminWidthminHeight 这些样式值会很有用。或者,你也可以使用 hitSlop prop 在不影响布局的情况下增加可交互区域。下面是一个演示:

使用 Android Ripple

Android API 21+ 使用 Material Design 的 ripple 效果,在用户触摸屏幕上的可交互区域时提供反馈。React Native 通过 TouchableNativeFeedback 组件 暴露了这一能力。使用这种触摸效果而不是 opacity 或 highlight,通常会让你的应用在该平台上更贴合系统风格。话虽如此,使用它时需要小心,因为它在 iOS 上以及 Android API < 21 上都无法工作,因此你需要在 iOS 上回退使用其他 Touchable 组件之一。你可以使用类似 react-native-platform-touchable 的库来为你处理平台差异。

屏幕方向锁定

默认情况下,多种屏幕方向都应当正常工作,除非你使用了 Dimensions API 且没有处理方向变化。如果你不想支持多种屏幕方向,可以将屏幕方向锁定为竖屏或横屏。

在 iOS 上,在 Xcode 的 General 选项卡和 Deployment Info 部分启用你想支持的 Device Orientation(进行更改时,请确保在 Devices 菜单中已选择 iPhone)。对于 Android,打开 AndroidManifest.xml 文件,并在 activity 元素中添加 'android:screenOrientation="portrait"' 以锁定为竖屏,或添加 'android:screenOrientation="landscape"' 以锁定为横屏。

了解更多

Material DesignHuman Interface Guidelines 是学习如何为移动平台设计的极佳资源。