关闭android上的kivy webview
我需要在我的应用程序中使用webview。但在启动它之后,我无法回到“经典”的kivy应用程序或并行运行某些东西 这是我的代码:关闭android上的kivy webview,android,webview,kivy,buildozer,Android,Webview,Kivy,Buildozer,我需要在我的应用程序中使用webview。但在启动它之后,我无法回到“经典”的kivy应用程序或并行运行某些东西 这是我的代码: from kivy.clock import Clock from android.runnable import run_on_ui_thread from kivy.uix.widget import Widget from kivy.app import App from kivy.uix.label import Label from kivy.uix.gri
from kivy.clock import Clock
from android.runnable import run_on_ui_thread
from kivy.uix.widget import Widget
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
from kivy.uix.popup import Popup
WebView = autoclass('android.webkit.WebView')
WebViewClient = autoclass('android.webkit.WebViewClient')
activity = autoclass('org.kivy.android.PythonActivity').mActivity
@run_on_ui_thread
def create_webview(*args):
webview = WebView(activity)
webview.getSettings().setJavaScriptEnabled(True)
wvc = WebViewClient();
webview.setWebViewClient(wvc);
activity.setContentView(webview)
webview.loadUrl('https://google.com')
@run_on_ui_thread
def close_webview(*args):
webview = WebView(activity)
webview.getSettings().setJavaScriptEnabled(True)
wvc = WebViewClient();
webview.setWebViewClient(wvc);
activity.setContentView(webview)
webview.destroy()
class MyGrid(GridLayout):
def __init__(self, **kwargs):
super(MyGrid, self).__init__(**kwargs)
self.cols = 1
self.add_widget(Label(text = "Test", font_size = 55))
self.submit = Button(text = "Launch popup", font_size = 40)
self.add_widget(self.submit)
self.submit.bind(on_press=self.pressed)
def pressed(self, instance):
show_popup()
def show_popup():
show = Wv()
window = Popup(title = 'Popup', content = show, size_hint = (0.8, 0.8))
window.open()
class Wv(Widget):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.__functionstable__ = {}
Clock.schedule_once(create_webview, 0)
Clock.schedule_once(close_webview, 15)
class MyApp(App):
def build(self):
return MyGrid()
if __name__ == '__main__':
MyApp().run()
我正在尝试使用webview.destroy()
和Clock.schedule\u一次(close\u webview,15)
在15秒后关闭它,但什么也没发生。我也尝试了webview.disclose
,但效果不太好
最终目的是在确定的时间后启动另一个url。关闭它并打开一个新的webview似乎是解决方案,但其他技术也可以很好
我怎样才能解决我的问题
谢谢你的帮助