Что ж, кажется, я должен ответить на все свои вопросы по StackOverflow. Надеюсь, это поможет кому-то в будущем.
.kv отсутствует dirselect: True это поместит папку с одним щелчком мыши в список выбора. Чтобы войти в эту папку, вам нужно щелкнуть дважды.
В исходном состоянии используется str (Path.home ())
Новый способ:
.kv
TextInput:
id: file_path
FileChooserIconView:
id: filechooser
on_selection: file_path.text = self.selection and self.selection[0]
dirselect: True
.py
from pathlib import Path
class foo(Screen):
def __init__(self):
self.ids.file_path.text = str(Path.home())
self.ids.filechooser.path = str(Path.home())
self.ids.filechooser.filters = [lambda folder, filename: not filename.endswith('.sys')]
Это решает первые 3 проблемы. Насчет числа 4 я не уверен - я предполагаю, что это означает, что если есть список self.selection, используйте self.selection [0], но если списка нет, используйте пустую строку. Поскольку при выборе каталога производится правильный выбор, нам не нужен другой вариант после или
Не стесняйтесь исправлять мои предположения - я буду рад узнать больше.