2011-01-25 2 views
0

В моей игре я хотел бы иметь своеобразное «сообщение дня». В принципе, когда пользователь вводит кнопку «сообщение дня» в главном меню, он откроет просмотр в браузере в игре. Когда пользователь будет сделан, он нажимает кнопку «закрыть», и вид исчезает, возвращая его в меню игры.Создание веб-браузера в игре на Android

Итак, можно ли динамически создать просмотр браузера? Если да, то как?

ответ

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"); 
     } 
    } 
+0

ли вызов findViewById предположить, что расположение WebView была определена где-то уже? Что, если этого не было? Будет ли это возможно? – djcouchycouch

+0

Вы можете добавить webview программно, если он не определен в xml. –

0

Возможно, вы просто можете использовать WebView. Когда вы хотите, чтобы он появился, вы можете просто установить его состояние просмотра в View.VISIBLE. Когда вы хотите, чтобы он ушел, просто установите его состояние просмотра в View.GONE.

0

Вы можете добавить/удалить WebView в свою игру динамически (или показать/скрыть, что вы предпочитаете).

Посмотрите на WebView учебник для получения дополнительной информации:

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

Убедитесь в том, чтобы оставить место для вашей кнопки «Закрыть» в макете, то есть вы не хотите, чтобы установить высоту макета до "fill_parent".

Смежные вопросы