2016-08-31 14 views
-3

私は初めてのアプリを開発しており、webview内にウェブページのセクションを表示するためのアクティビティが必要です。ウェブページには、私のアプリが表示されたくない多くの追加や無関係な事項が含まれています。webviewを通じてウェブページの一部のみを表示

たとえば、私はサンプルのWebページとしてyoutubeをとり、ボディを表示しようとしませんでした。私はyoutubeページを調べて、 "ページコンテナ"がウェブページの中央部分のIDとして見つかった。

public class ResultsActivity extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_results); 
    final WebView webview = (WebView)findViewById(R.id.results_webview); 
    webview.getSettings().setDomStorageEnabled(true); 
    webview.getSettings().setJavaScriptEnabled(true); 
    webview.setWebViewClient(new WebViewClient() { 
     @Override 
     public void onPageFinished(WebView view, String url) 
      { 
      webview.loadUrl("javascript:function() { " + 
        "document.getElementById('page-container')[0].style.display='none'; " + 
        "})()"); 
      } 
     }); 
    webview.loadUrl("https://www.youtube.com"); 
} 

しかし、onPageFinished()関数内のjavascriptコードは機能していません。完全なYouTubeページがアプリに公開されています。

答えて

0

私はあなたのウェブページを調べることでIDを手動で確認する必要があるでしょう。一度それを得ると、jsoup html parserこの類似のスレッドで述べたhereを使用することができます。

Document doc = Jsoup.connect(URL).get(); 
Elements elementsHtml = doc.getElementById(id); 
for(Element element: elementsHtml) 
{ 
    Log.i("ELEMENTI",URLDecoder.decode(element.text(), HTTP.UTF_8)); 
} 
関連する問題