You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Android端editable={false}的文本组件启用滚动功能

Android端不可编辑多行文本滚动实现方案(React Native 场景)

该交互差异是React Native跨端默认实现的区别:iOS端TextInput设置multiline={true}后,不可编辑状态默认自带滚动能力,Android端默认关闭了该状态下的滚动响应,可通过以下两种方案实现需求:

  • 方案1:嵌套ScrollView(全版本兼容)
    将多行文本组件直接包裹在ScrollView内即可实现滚动效果,无React Native版本要求,适配所有Android系统版本,示例代码如下:

    <ScrollView>
      <TextInput
        multiline={true}
        editable={false}
        value="你需要展示的长文本内容"
        // 其他自定义样式、属性配置
      />
    </ScrollView>
    

    若为纯静态文本展示无需使用TextInput的特性,直接替换内部组件为Text即可,属性配置完全一致。

  • 方案2:使用TextInput原生属性(React Native 0.66及以上版本支持)
    无需嵌套外层组件,直接给TextInput添加scrollEnabled={true}属性即可实现滚动,代码更简洁:

    <TextInput
      multiline={true}
      editable={false}
      scrollEnabled={true}
      value="你需要展示的长文本内容"
      // 其他自定义样式、属性配置
    />
    

    注意该属性仅在0.66及更高版本的React Native中对Android端生效,低版本使用不会触发报错但无滚动效果。

内容的提问来源于stack exchange,提问作者Mykola Korostelov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 22:54:10