gpt4 book ai didi

android - Kivy - 更改 FileChooser 默认位置

转载 作者:太空狗 更新时间:2023-10-29 22:24:59 25 4
gpt4 key购买 nike

现在文件选择器打开根目录作为默认位置,但我希望它跳过它并默认打开内部存储(sdcard),用户可以从那里向下。

到目前为止,这是我的代码 fragment 类(class):

class LoadDialog(FloatLayout):
load = ObjectProperty(None)
cancel = ObjectProperty(None)

kv文件中的定义

<LoadDialog>:
BoxLayout:
size: root.size
pos: root.pos
orientation: "vertical"
FileChooserListView:
id: filechooser

BoxLayout:
size_hint_y: None
height: 30
Button:
text: "Cancel"
on_release: root.cancel()

Button:
text: "Load"
on_release: root.load(filechooser.path, filechooser.selection)

实际加载代码:

def show_load(self):
content = LoadDialog(load=self.load, cancel=self.dismiss_popup)
self._popup = Popup(title="Load file", content=content,
size_hint=(0.9, 0.9))
self._popup.open()

def load(self, path, filename):
wimg = os.path.join(path, filename[0])
self.image_source = wimg
self.dismiss_popup()

所以基本上用户不必上一级目录就可以到达 sdcard,应该已经在那里了。最坏的情况是过滤除包含单词 sdcard 的文件夹之外的所有其他文件夹。

最佳答案

设置路径属性。

FileChooserListView:
id: filechooser
path: "/your/path"

要使用 python 在您的系统上查找目录,您可以这样做:

import os

for root, dirs, files in os.walk("/"):
for name in dirs:
if name == "DCIM":
print(root, name)

请注意,它可能会在您的 SD 卡和内部存储设备上找到两个或更多名为 DCIM 的目录。

关于android - Kivy - 更改 FileChooser 默认位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42505450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com