私のアプリにはたくさんの画面があり、前の画面に戻るために戻るボタンが普遍的に働くようにしたいと思います。私はスタックを実装し、前の画面をポップしようとしていますが、何らかの理由で、私が見つけたウィンドウバインドメソッドのソリューションが完全には機能しません。戻るボタンの機能画面キャッシュ付きKivy
class RegisterScreen(Screen):
screenlist = ListProperty([])
def __init__(self, **kwargs):
super(RegisterScreen, self).__init__(**kwargs)
# Setting it up to listen for keyboard events
Window.bind(on_keyboard=self.onBackBtn)
def onBackBtn(self, window, key, *args):
""" To be called whenever user presses Back/Esc Key """
# If user presses Back/Esc Key
if key == 27:
print(self.screenlist)
self.manager.current = self.screenlist[len(screenlist)]
return True
このコードの問題は、__init__オーバーライドメソッドです。私は、ウィンドウにon_keyboard関数をバインドしていると考えています。すべてバックボタンを押すとonBackBtnメソッドが使用されます。これをどうすれば解決できますか?
TLDR:前の画面のスタックに戻って戻るボタンを許可するにはどうすればよいですか?
私は主にKV言語を使用していますが、戻るボタンの実装では、私が思うPythonで行うことは簡単です...
明確化:私はすべてのバックボタンのプレスはonBackBtnメソッドを使用していますが、前の画面に戻る – Nithishbn