【发布时间】:2021-01-18 07:00:59
【问题描述】:
我无法让平面列表远离其页脚中的数据输入字段。这是我的代码:
import React, { useState, useEffect } from 'react';
import { View, Text, Alert , TextInput, Button, Platform, KeyboardAvoidingView,Animated,Easing} from 'react-native';
import { FlatList } from 'react-native-gesture-handler';
export function PlayAreaScreen({ route, navigation }) {
const [itemsToShow, setitemsToShow] = React.useState([{key:'0',name:"sdfsdfds"}]);
const PopulateTestData = () =>{
const DATA = [];
for (let index = 0; index < 6; index++) {
DATA.push({key:index.toString(), name:`index ${index}`});
}
setitemsToShow(DATA);
console.log(itemsToShow);
}
const MyFooter = (props) =>{
const [sometext, setsometext] = React.useState('');
return(
<View style={{borderWidth:1}}>
<TextInput value={sometext} onChangeText={(text) => setsometext(text)} placeholder="Enter data here"></TextInput>
</View>
)
}
React.useEffect(()=>{
PopulateTestData();
}, []);
return (
<KeyboardAvoidingView behavior={Platform.OS === "ios" ? "position" : "height"}>
<FlatList
data={itemsToShow}
ListFooterComponent = {MyFooter}
keyExtractor={(item) => item.key}
renderItem={(item) => <KeyboardAvoidingView style={{height:80, borderWidth:1}}><Text>{item.item.name}</Text></KeyboardAvoidingView>}
>
</FlatList>
</KeyboardAvoidingView>
)
}
基本上它根本不滚动平面列表。如果我在平面列表中只有一两个项目,它显然可以工作,因此它不需要滚动以适应键盘。
这是一张显示如何覆盖数据输入字段的图片:
谢谢,
马尼什
【问题讨论】:
标签: react-native react-native-ios