【问题标题】:Need help to change markers based on horizontal scrolling on list react native需要帮助根据列表上的水平滚动更改标记本机反应
【发布时间】:2017-07-24 07:44:48
【问题描述】:

我需要根据在水平列表中选择的相应餐厅突出显示标记,并且在滚动时标记突出显示需要更改

任何实现此目的的提示或示例代码都会有很大帮助。

我正在使用 react-native-maps 库

谢谢。

【问题讨论】:

    标签: react-native react-native-listview react-native-maps


    【解决方案1】:

    如果您在创建时使用标记映射列表元素,您可以检索显示的元素如下:

    int last = listView1.getLastVisiblePosition();  
    
    int first = listView1.getFirstVisiblePosition();
    

    所以滚动后,当您通知适配器更改时,您可以更改特定标记的颜色:

    marker.setIcon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
    

    希望对你有帮助。

    【讨论】:

      【解决方案2】:

      按照以下步骤实现:

      • 将resturantId 设置为每个标记的标签。

      • 将滚动监听器添加到您的 ListView 并在滚动停止时获取 像这样的最后一个可见项目:int last = listView.getLastVisiblePosition();

      • 获取当前焦点项目的 id 并在所有标记上应用循环,如果标记的标记与 resturantId 匹配,则相应地更改标记图标并为所有其他标记更改不同的图标。

        李>

      这会对你有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-11-02
        • 1970-01-01
        • 2020-11-11
        • 1970-01-01
        • 2021-12-10
        • 2011-01-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多