如何 return 从 KivyMD 列表中选择项目?

How to return selected item from KivyMD list?

我正在尝试编写代码来 return 在列表中单击的项目的数量,但我不知道在 lambda x:

之后需要做什么
from kivy.lang import Builder
from kivymd.app import MDApp
from kivymd.uix.list import OneLineListItem

KV = '''
ScrollView:

    MDList:
        id: container
'''


class Test(MDApp):
    def build(self):
        return Builder.load_string(KV)

    def on_start(self):
        for i in range(20):
            self.root.ids.container.add_widget(
                OneLineListItem(text=f"Single-line item {i}", on_press=lambda x: print("item number"))
            )

Test().run()

这是在循环中定义 lambda 时的常见问题。修复方法是为 lambda 创建一个新参数,即循环变量的当前值。尝试替换:

OneLineListItem(text=f"Single-line item {i}", on_press=lambda x: print("item number"))

与:

OneLineListItem(text=f"Single-line item {i}", on_press=lambda x, item=i: print("item number", item))