简体   繁体   English

用Viewpager和Fragment调用onKeyDown

[英]Calling onKeyDown with Viewpager and Fragments

How can i make the below code work with a viewpagers that is loading 3 fragments, all are webviews with different URL's. 我如何使下面的代码与加载3个片段的viewpagers一起工作,所有片段都是具有不同URL的Web视图。 Im simply trying to make it so that when clicking back on whatever fragment, it calls web.goBack(); 我只是试图使其变得如此,以便当单击任何片段时,它调用web.goBack();

Here is the code i've used in normal activities, I guess i need recommendations on weather this code should be inside the indivisual fragments or inside the main viewpager. 这是我在正常活动中使用的代码,我想我需要有关天气的建议,此代码应位于单个片段或主viewpager中。 Any suggestions or examples, or code would be greatly appreciated. 任何建议或示例,或代码将不胜感激。

public boolean onKeyDown(int KeyCode, KeyEvent event) {
    if ((KeyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) {
        web.goBack();
        return true;
    }
    return super.onKeyDown(KeyCode, event);
} 

You can override this in main Activity and then in on onKeyDown(int KeyCode, KeyEvent event) get your ViewPagers current fragment. 您可以在主Activity中覆盖它,然后在onKeyDown(int KeyCode,KeyEvent event)上获取ViewPagers当前片段。 In the end you will able to do something like this : 最后,您将可以执行以下操作:

public boolean onKeyDown(int KeyCode, KeyEvent event) {

//.. get your fragment

WebView web = fragment.getWeb();

if ((KeyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) {
    web.goBack();
    return true;
}
return super.onKeyDown(KeyCode, event);
} 

Best wishes. 最好的祝愿。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM