2017-10-09 1 views
0

다른 앱이나이 앱의 다른 부분을 호출하는 버튼으로 앱을 만들고 싶습니다. 예를 들어한 화면에서 다른 화면으로 이동하면 RecursionError가 발생합니다.

:

내가 그 모든 응용 프로그램입니다 생각 나는 보고서 등 보고서 작성, 보고서보기 같은 몇 가지 옵션을 선택할 관리 할 수있는 메인 화면입니다.

따라서 Kivy App 클래스의 하위 클래스 두 개를 만듭니다. 각각의 클래스는 자체 .kv 파일을 가지고 있습니다. 하나가 메인 화면이고 다른 하나가 다른 화면이라고 가정합니다.

나는 그것이 작동하는 것 같습니다 그렇게,하지만 난 콘솔에 다음과 같은 오류가 콘솔에, 두 번째 화면을 호출 할 때 :

RecursionError: maximum recursion depth exceeded in comparison

가 어떻게이 문제를 해결할 수 있습니까?

Main.py 파일

from kivy.app import App 


class ProbandoApp(App): 
    pass 


class TestApp(App): 
    probando = ProbandoApp() 

print(__name__) 
if __name__ == '__main__': 
    TestApp().run() 

포함하고 나는 각 클래스의 .kv 파일이 있습니다.

또한 포함 test.kv라는 파일이 있습니다

Widget: 
    Button: 
     id: btnTest 
     text: 'Test' 
     width: 100 
     height: self.font_size * 2 
     on_press: app.probando.run() 

와 여러 애플리케이션을하지 않을 것 소리

Widget: 
    Button: 
     id: btnProbando 
     text: 'Otra cosa mas para probar' 

답변

0

을 포함 probando.kv라는 파일하지만, 하나의 응용 프로그램을 인터페이스가 변경됩니다. 위젯을 전환하여이 작업을 수행 할 수 있으며 ScreenManager은 편리한 API를 제공합니다.

관련 문제