Как удалить интервал между моей карточкой в ​​режиме реагирования Native (FlatList)? - PullRequest
0 голосов
/ 12 апреля 2020

Как видите, я хочу показать свои предметы в каменной кладке. Но существующие пакеты пока не позволяют мне делать это с разными типами карт.

Это мой плоский список. «PiinsStandard» может быть видео, картинками или постами.

            <FlatList
                numColumns={2}
                style={styles.list}
                data={this.props.PiinsFeed.piins}
                keyExtractor={(item) => item.id.toString()}
                renderItem={({ item }) => (<PiinsStandard piins={item} navigation={this.props.navigation} />)}
                onScroll={this._onScroll}
                onEndReachedThreshold={0.5}
                onEndReached={() => this._getPiinsList()}
            />

Это мой стиль для каждой карты

    card: {
        marginVertical: 5,
        marginHorizontal: 4,
        borderRadius: 8,
        shadowColor: "#000",
        shadowOffset: {
            width: 0,
            height: 2,
        },
        shadowOpacity: 0.25,
        shadowRadius: 3.84,
        elevation: 5,
        flex: 1,
    }

enter image description here

Спасибо, если у вас есть решение. Я уже попробовал этот пакет: https://github.com/brh55/react-native-masonry, но невозможно настроить мою карту так, как я хочу

1 Ответ

1 голос
/ 12 апреля 2020

Согласно реагирующему родному FlatList , все элементы должны иметь одинаковую высоту - макеты кладки не поддерживаются.

Так что для достижения макета кладки, вы должны использовать пользовательские библиотека.

Надеюсь, это поможет вам. Не стесняйтесь сомнений.

...