如何在 Kivy 中制作动态地图视图?

Posted

技术标签:

【中文标题】如何在 Kivy 中制作动态地图视图?【英文标题】:How to make a dynamic mapview in Kivy? 【发布时间】:2021-03-20 01:15:16 【问题描述】:

我正在制作一个有地图的应用程序,我希望每次坐标不同时地图的位置都会改变, 我曾尝试使用ids 更改latlon 的值,但它不起作用,请有人帮助我

import kivy
from kivymd.app import MDApp
from kivy.lang import Builder
from kivy_garden.mapview import MapView
from kivymd.uix.boxlayout import MDBoxLayout
from kivymd.uix.button import Button
from kivymd.uix.card import MDCard

kv = '''


Maap:
    elevation: 0
    padding: '0dp'
    size_hint: .95, .83
    pos_hint: "center_x": .5, "center_y": .5
    radius: [3]
    MapView:
        id: mapp
        zoom: 5
        lat: 
        lon: 
    Button:
        text: 'Change'
        on_press: root.change()
'''
class Maap(MDCard):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
    def change(self):
        self.ids.mapp.lat = 13.5435
        self.ids.mapp.lon = -89.5445


class App(MDApp):

    def build(self):
        
        return Builder.load_string(kv)

App().run()

【问题讨论】:

【参考方案1】:

我通过添加 2 个文本字段来解决它,其中 1 个具有纬度,2 个具有经度,然后将数据保存在 2 个变量中,然后在另一个函数中使用它们的值。

【讨论】:

以上是关于如何在 Kivy 中制作动态地图视图?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SwiftUI 的新地图视图中制作可点击的图钉?

Kivy:如何在 kivy 中制作圆角 TextInput?

Kivy:制作表格小部件

如何在 Kivy 的 Scrollable GridLayout 中显示图像

如何在缩略图库中制作可点击的 kivy 图像

如何在kivy中制作自我更新时钟标签?