android浏览器开发小技巧集锦

本人和朋友们做了一段时间浏览器,将一些小技巧分享出来,先写一部分,慢慢写,同时也为我们的浏览器打打广告

我们的浏览器将要上线,名叫沙发浏览

1.网页内的右键菜单

public boolean onLongClick(View view) {
		// 获取点击的元素
		HitTestResult mResult = mWebView.getHitTestResult();

		final int type = mResult.getType();
		switch (type) {
			case HitTestResult.ANCHOR_TYPE:
			case HitTestResult.SRC_ANCHOR_TYPE:
				//点击的是链接
				break;

			case HitTestResult.IMAGE_TYPE:
			case HitTestResult.IMAGE_ANCHOR_TYPE:
			case HitTestResult.SRC_IMAGE_ANCHOR_TYPE:
				//点击的是图片
				break;

			default:
				//点击的是空白处
				break;
		}
		return true;
	}

根据是图片还是链接还是空白做判断


2.网页内的自由复制

转载请注明出处:http://blog.csdn.net/ethan_xue/article/details/7748075


/**
	 * 网页里 复制粘贴
	 * @param view webView
	 * @author ethan
	 */
	private void emulateShiftHeld(KeyEvent.Callback view)
	{
		try
		{
			KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,
					KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
			shiftPressEvent.dispatch(view);
		} catch (Exception e)
		{
		}
	}

3.出错界面

webkit自带的出错界面不够霸气,于是改为自己做的出错界面

new WebViewClient()
...此为背景
@Override
		public void onReceivedError(WebView view, int errorCode,
				String description, String failingUrl) {
			view.stopLoading();
			view.clearView();

			// 显示出错界面
			mWebView.loadUrl("file:///android_asset/error.html");
		}

4.点外部链接调用自己的浏览器

在manifest.xml里主activity加入intent

                                                                                                                                                                                                                                                                                                                                                                                                                       

外部调用就ok了,连file文件都能调用,若自己调用的话

Uri uri = Uri.parse("file://data/data/test.html");
//   Uri uri = Uri.parse("http://m.baidu.com");     
  Intent it = new Intent(Intent.ACTION_VIEW, uri);        
  context.startActivity(it);     




你可能感兴趣的:(Android)