Advertisement
Guest User

Untitled

a guest
Aug 28th, 2014
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.24 KB | None | 0 0
  1. private WebView mWebView;
  2.  
  3. @SuppressLint("SetJavaScriptEnabled")
  4. @Override
  5. protected void onCreate(Bundle savedInstanceState) {
  6. super.onCreate(savedInstanceState);
  7. if(android.os.Build.VERSION.SDK_INT >=11)
  8. {
  9. getWindow().addFlags(16777216);
  10. }
  11. setContentView(R.layout.activity_main);
  12.  
  13. mWebView = (WebView) findViewById (R.id.webview);
  14. mWebView.getSettings().setJavaScriptEnabled(true);
  15. mWebView.loadUrl("http://myUrl");
  16. mWebView.setWebViewClient(new HelloWebViewClient());
  17. mWebView.getSettings().setSupportMultipleWindows(true);
  18. mWebView.setWebChromeClient(new ChromeClient());
  19. mWebView.setWebViewClient(new WebClient1()
  20. {
  21. @SuppressLint("NewApi")
  22. @ Override public boolean shouldOverrideUrlLoading(WebView view, String url) {
  23. if (url.startsWith("vnd.youtube")){
  24. startActionMode((Callback) new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
  25. return true;
  26. } else{
  27. return false;
  28. }
  29. }
  30. }
  31. );
  32. }
  33.  
  34.  
  35.  
  36.  
  37. private class HelloWebViewClient extends WebViewClient {
  38. @Override
  39. public boolean shouldOverrideUrlLoading(WebView view, String url) {
  40. view.loadUrl(url);
  41. return true;
  42. }
  43. }
  44.  
  45. private class ChromeClient extends WebChromeClient {
  46. FrameLayout.LayoutParams LayoutParameters = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,
  47. FrameLayout.LayoutParams.MATCH_PARENT);
  48. private Object mCustomView;
  49. private RelativeLayout mContentView;
  50. private FrameLayout mCustomViewContainer;
  51. private CustomViewCallback mCustomViewCallback;
  52.  
  53. @Override
  54. public void onShowCustomView(View view, CustomViewCallback callback) {
  55. // if a view already exists then immediately terminate the new one
  56. if (mCustomView != null) {
  57. callback.onCustomViewHidden();
  58. return;
  59. }
  60.  
  61. mContentView.setVisibility(View.GONE);
  62. mCustomViewContainer = new FrameLayout(MainActivity.this);
  63. mCustomViewContainer.setLayoutParams(LayoutParameters);
  64. mCustomViewContainer.setBackgroundResource(android.R.color.black);
  65. view.setLayoutParams(LayoutParameters);
  66. mCustomViewContainer.addView(view);
  67. mCustomView = view;
  68. mCustomViewCallback = callback;
  69. mCustomViewContainer.setVisibility(View.VISIBLE);
  70. setContentView(mCustomViewContainer);
  71. }
  72.  
  73. @Override
  74. public void onHideCustomView() {
  75. if (mCustomView == null) {
  76. return;
  77. } else {
  78. // Hide the custom view.
  79. ((View) mCustomView).setVisibility(View.GONE);
  80. // Remove the custom view from its container.
  81. mCustomViewContainer.removeView((View) mCustomView);
  82. mCustomView = null;
  83. mCustomViewContainer.setVisibility(View.GONE);
  84. mCustomViewCallback.onCustomViewHidden();
  85. // Show the content view.
  86. mContentView.setVisibility(View.VISIBLE);
  87. setContentView(mContentView);
  88. }
  89. }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement