反应本机列表没有透明度

时间:2019-04-08 10:55:34

标签: reactjs react-native view position scrollview

我遇到以下问题:我想用Google Maps Places API来实现位置搜索栏以生成结果。一切正常,但listview(位置属性设置为绝对值)似乎是透明的。 imgur

我已经尝试将容器的不透明度设置为1,但这并没有帮助。有人可以告诉我在容器中看不到的底层测试文本需要更改什么吗?

我的代码: locationPicker:

<View style={styles.modalContainer}>
                            <SafeAreaView style={styles.safeArea}>
                                <View style={styles.searchContainer}>
                                    <LocationSearchBar/>
                                </View>
                            </SafeAreaView>


                            <View style={styles.modalContent}>
                                <Text>test</Text>
                            </View>
                          

                        </View>
                        
searchContainer: {
        alignItems: "center",
        justifyContent: "center",
        minHeight: 60,
        paddingHorizontal: 16,
        paddingVertical: 10,
        backgroundColor: theme.colors.screen.alter
    }

locationSearchBar:

<React.Fragment>

                        <TextInput
                            autoCorrect={false}
                            onChangeText={handleTextChange}
                            value={inputValue}
                            label={<Icon name={"search"} />}
                            placeholder={"Search location..."}
                        />
                        <ScrollView style={styles.autoCompleteResultList}>
                            {locationResults.map((el, i) => (
                                <AutoCompleteItem
                                    {...el}
                                    fetchDetails={fetchDetails}
                                    key={String(i)}
                                />
                            ))}
                        </ScrollView>

                    </React.Fragment>
       
AutoCompleteItem:
<View style={styles.autoCompleteItemContainer}>
                <RkText rkType={"primary2"}>{this.props.structured_formatting.main_text}</RkText>
                <RkText rkType={"primary1"}>{this.props.structured_formatting.secondary_text}</RkText>
            </View>



autoCompleteItemContainer: {
        backgroundColor: "red",
        paddingHorizontal: 5,
        paddingVertical: 5
    },
    autoCompleteResultList: {
        maxHeight: 200,
        position: "absolute",
        backgroundColor: theme.colors.screen.alter,
        width: "100%",
        top: 55
    }

欢呼!

1 个答案:

答案 0 :(得分:1)

我认为这不是背景颜色或不透明性问题。

您的位置似乎存在重叠问题:绝对视图和默认视图

测试是正常测试或默认测试,因此它具有超过任何位置(绝对视图)的最高优先级。

因此,测试高于结果。

您需要更改此位置并使结果超出测试范围。

因此通过zIndex做到这一点。

autoCompleteResultList: {
        maxHeight: 200,
        position: "absolute",
        backgroundColor: theme.colors.screen.alter,
        width: "100%",
        top: 55,
        zIndex:1 // highest number of zIndex in your current screen if you have other zIndex
    }