React Native. Клик по кнопке при открытой клавиатуре

Рейтинг: 0Ответов: 2Опубликовано: 03.03.2023

Проблема такая:

При открытой клавиатуре, если нажать на кнопку Continue, то кнопка не срабатывает. Вместо этого срабатывает закрытие клавиатуры. И только потом можно уже нажимать на кнопку. Как сделать так, чтобы клик по кнопке работал при открытой клавиатуре?

Проверял, что при клике при открытой клавиатуре не срабатывает даже onPress на любом элементе

return (
        <>
            <GoBack />
            <ErrorModal error={error} resetError={setError} />
            <ScrollView>
                <TouchableOpacity onPress={Keyboard.dismiss}>
                <View >
                    <View>
                        <IconsMap.LogoIconGradient />
                    </View>
                    <Text>
                        {lang.create_acc}
                    </Text>
                    <Text>
                        {lang.create_acc_desc}
                    </Text>
                    <TextInput                  
                        value={store.phone}
                        placeholder={lang.enter_phone_number}
                        placeholderTextColor={color.phonePlaceholder}
                        onChangeText={(phone) => (store.phone = phone.replace(/[^0-9+]/g, ''))}
                        onSubmitEditing={onContinue}
                        keyboardType={'phone-pad'}
                        textContentType={'telephoneNumber'} 
                    />
                    <XButton.Continue  onClick={onContinue} disabled={loader} loader={loader}/>
                    
                </View>
            </TouchableOpacity>
            </ScrollView>
        </>
    )

Ответы

▲ 0Принят

Проблема решена! Дело было в ScrollView. Нужно добавить keyboardShouldPersistTaps={'handled'}

<ScrollView keyboardShouldPersistTaps={'handled'}>
 <SOME CODE/>
</ScrollView> 
▲ 0

Нужно добавить keyboardShouldPersistTaps={'handled'} для ScrollView.