在Android上创建游戏内Web浏览器

时间:2011-01-25 14:25:03

标签: java android webview

在我的游戏中,我想要一种“当天的消息”功能。基本上,当用户点击主菜单中的“当天消息”按钮时,它将在游戏中打开浏览器视图。用户完成后,他点击“关闭”按钮,视图消失,返回游戏菜单。

那么,是否可以动态创建浏览器视图?如果有,怎么样?

3 个答案:

答案 0 :(得分:1)

以下内容也可用于对话框

    public void setWebView() {
//WebViewClient is used if you want to capture stuff from the webview, like if a link was pressed
                WebViewClient yourWebClient = new WebViewClient() {
                    @Override
                    public boolean shouldOverrideUrlLoading(WebView view, String url) {
                        open_web = true;
                        if (!url.startsWith("http://") && !url.startsWith("https://")) {
                                url = "http://" + url;
                        }
                        Intent browserIntent = new Intent("android.intent.action.VIEW",
                                Uri.parse(url));
                        startActivity(browserIntent);
                        return true;
                    }
                };
                WebView wv = (WebView) findViewById(R.id.webview);
                wv.setWebViewClient(yourWebClient);
                String str = getHtml();
                wv.loadData(str, "text/html", "utf-8");
                wv.setBackgroundColor(0);
    }

    boolean isAsset = false;

    private String getHtml(){
        InputStream source = null;
        if (isAsset){
            source = getAssets().open("motd.html");
        } else {
            source = new FileInputStream(Environment.getExternalStorageDirectory() + "motd.html");
        }
    }

答案 1 :(得分:0)

你可能只是使用WebView。当您希望它显示时,您可以将其视图状态设置为View.VISIBLE。当你希望它消失时,只需将其视图状态设置为View.GONE。

答案 2 :(得分:0)

您可以动态地为游戏添加/删除WebView(或者显示/隐藏它,无论您喜欢什么)。

请查看WebView教程以获取更多信息:

http://developer.android.com/resources/tutorials/views/hello-webview.html

确保为布局中的“关闭”按钮留出空间,即您不希望将布局高度设置为“fill_parent”。