[英]Kivy ScrollView of Label won't scroll
我在 ScrollView 中有一個 Label,希望當(多行)文本占用太多行時,用戶可以向上和向下滾動,當行太長時,用戶可以向左和向右滾動。 我無法讓它滾動。 這是我的 Builder 字符串的相關部分:
ScrollView:
id: scrollLayout
size_hint_y: 0.9
Label:
id: sortFilesDisplay
size_hint_y: 0.9
text: 'Drag\\n in\\n files\\n to\\n be\\n sorted\\n yea\\n go\\n now\\n testing\\n please\\n work\\n now\\help'
我已經閱讀了ScrollView 上的Kivy 文檔,說我需要指定 size_hints 之一來啟用滾動。 我已經閱讀了一些關於讓 ScrollView 工作的 SO 帖子:
但它們都涉及嵌入某種布局(例如GridLayout),但我沒有嵌入布局,只是一個標簽。 我已經嘗試將 minimum_height 設置為我在這些帖子中看到的各種內容,但仍然沒有效果。
這兩個 size_hint_y 在那里只是為了按照指示去做; 我不需要它們。 還嘗試將它們設置為無。
有任何想法嗎?
此外,文本的靜態字符串不是我最終想要的。 我希望標簽在字符串更改時保持可滾動(當用戶放入新的文件列表時),但我認為“動態”操作可能是一個問題,所以現在我“退回”嘗試靜態字符串。
為了使Label
可滾動,它應該比ScrollView
小部件大,因此您需要將size_hint
設置為None
並將標簽大小綁定到文本大小。 例如:
測試.kv:
ScrollView:
Label:
id: sortFilesDisplay
size_hint: None, None # <<<<<<<<<<
size: self.texture_size # <<<<<<<<<<
text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit,\n sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n\n" * 20
主文件
from kivy.app import App
from kivy.config import Config
Config.set('graphics', 'width', '300')
Config.set('graphics', 'height', '200')
class TestApp(App):
pass
if __name__ == '__main__':
TestApp().run()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.