2016-05-09 54 views
1

我有一個FloatLayout作爲ScrollView的子項,size_hint_y設置爲None。我希望能夠擴展它,因爲我添加了越來越多的內容。問題是,由於Kivy的座標系在左下方開始,當我將高度增加到FloatLayout時,所有內容都停留在底部。我可以以某種方式使其延伸?因爲我不認爲將所有小工具移動起來效率很高,特別是如果有很多小工具,我也需要處理所有小孩的位置。
下面是說明了問題行爲的一個片段:將Kivy ScrollView內容向下擴展

from kivy.app import App 
from kivy.uix.floatlayout import FloatLayout 
from kivy.uix.boxlayout import BoxLayout 
from kivy.uix.button import Button 
from kivy.uix.scrollview import ScrollView 
from kivy.uix.label import Label 

class TestApp(App): 
    def extend_h(self, *args): 
     global msg_float 
     msg_float.height += 50 

    def build(self): 
     global msg_float 
     msg_float = FloatLayout(size_hint_y = None) 
     bt1_main = Button(on_press = self.extend_h) 
     bl = BoxLayout() 
     sc = ScrollView() 
     sc.add_widget(msg_float) 
     bl.add_widget(sc) 
     bl.add_widget(bt1_main) 
     lb = Label(text = "Test", 
        size=(100,200), 
        size_hint = (None, None)) 
     msg_float.add_widget(lb) 
     return bl 

TestApp().run() 

隨着按下按鈕,視圖擴展和​​標籤停留在底部,但我希望它留在上面。

回答