Skip to content

[Android] content of TextInput in ScrollView is not visible on GalaxyS9 #27745

@kimkr

Description

@kimkr

When the 'TextInput' in 'ScrollView' is longer than device screen, the content of 'TextInput' is not visible.

When I tested on other android devices, it's okay. But Galaxy S9(SM-G960N)-Android 8.0.0 have the problem.

React Native version:

System:
OS: macOS 10.14.5
CPU: (4) x64 Intel(R) Core(TM) i7-6567U CPU @ 3.30GHz
Memory: 315.92 MB / 16.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.1.0 - /usr/local/bin/node
Yarn: 1.16.0 - /usr/local/bin/yarn
npm: 6.9.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
Android SDK:
API Levels: 20, 21, 22, 23, 24, 25, 26, 27, 28, 29
Build Tools: 23.0.1, 23.0.2, 23.0.3, 24.0.1, 25.0.0, 25.0.1, 25.0.2, 25.0.3, 26.0.0, 26.0.1, 26.0.2, 26.0.3, 27.0.1, 27.0.2, 27.0.3, 28.0.2, 28.0.3, 29.0.0
System Images: android-24 | Google Play Intel x86 Atom
Android NDK: 20.0.5594570
IDEs:
Android Studio: 3.5 AI-191.8026.42.35.5791312
Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
npmPackages:
react: 16.9.0 => 16.9.0
react-native: 0.61.5 => 0.61.5
npmGlobalPackages:
react-native-create-library: 3.1.2
react-native-git-upgrade: 0.2.7

Steps To Reproduce

import React from 'react'
import { ScrollView, TextInput } from 'react-native'

class TestScreen extends React.Component {
  render() {
    return (
      <TextInput
        underlineColorAndroid="transparent"
        multiline={true}
        editable={false} 
        style={[{
          color: '#000000',
          fontSize: 20,
          lineHeight: 24,
          margin: 0,
          borderWidth: 0,
          padding: 0,
          paddingVertical: 0,
          paddingHorizontal: 4,
          textAlignVertical: 'top',
        }]}
        autoCorrect={false}
        autoFocus={false}
        scrollEnabled={false}
        selectTextOnFocus={false}
        editable={true}
        returnKeyType={'next'}
        keyboardType="default"
        placeholder={''}>
        {
          Array(100).fill(0)
          .map(() => "test word, test word")
        }
      </TextInput>
    )
  }
}

export default TextScreen

When I set the size of array as 50, it's working.

But, when I set 100(the TextInput is longer than the device screen), the content of it is not visible.

Describe what you expected to happen:

I expect to the content of textinput is visible even if its height is longer than the device height.

Snack, code example, screenshot, or link to a repository:

array size 50

array size 100

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions