<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<WebView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/webView1" />
</LinearLayout>
方法二、Activity代碼:
using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using Android.Webkit;
namespace App1
{
[Activity(Label = "百姓市場", MainLauncher = true, Icon = "@drawable/icon1")]
public class MainActivity : Activity
{
int count = 1;
Android.Webkit.WebView webview;
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
//隱藏標題欄(須放在SetContentView函數之前)
this.RequestWindowFeature(WindowFeatures.NoTitle);
//設置全屏
this.Window.SetFlags(WindowManagerFlags.Fullscreen, WindowManagerFlags.Fullscreen);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
Android.Webkit.WebView webview2 = FindViewById<Android.Webkit.WebView>(Resource.Id.webView1);
this.webview = webview2;
webview2.LoadUrl("http://www.bxsc.net");
//加載項目中本地文件夾Assets下的test.html文件
// webview2.LoadUrl("file:///android_asset/test.html");
// webview2.LoadUrl("file:///android_asset/abc/test.html");
//啓用腳本
webview2.Settings.JavaScriptEnabled = true;
#region --縮放--
//設置支持縮放(前提是網頁自身支持縮放)
webview2.Settings.SetSupportZoom(true);
webview2.Settings.BuiltInZoomControls = true;
//支持任意比例縮放
webview2.Settings.UseWideViewPort = true;
//顯示縮放控件(放大/縮小按鈕)
webview2.Settings.DisplayZoomControls = false;
//自適應屏幕
// webview2.Settings.SetLayoutAlgorithm(WebSettings.LayoutAlgorithm.SingleColumn);
//webview2.Settings.LoadWithOverviewMode = true;
#endregion
//webview2.ClearCache(true);
//後退
//webview2.GoBack();
//設置Web視圖
webview2.SetWebViewClient(new ExtWebViewClient());
}
int sftc = 0;
public override bool OnKeyDown([GeneratedEnum] Keycode keyCode, KeyEvent e)
{
//當按下後退鍵時,返回WebView上一頁面,而不是結束
if (keyCode == Keycode.Back && webview.CanGoBack())
{
webview.GoBack();
return true;
}
else
{
if(sftc == 0)
{
Toast.MakeText(this, "在按一次退出程序", ToastLength.Long).Show();
sftc++;
if(sftc > 1)
{
return base.OnKeyDown(keyCode, e);
}
System.Timers.Timer timer = new System.Timers.Timer();
timer.Enabled = true;
timer.Interval = 3000;//執行間隔時間,單位爲毫秒
timer.Start();
timer.Elapsed += new System.Timers.ElapsedEventHandler(Timer1_Elapsed);
return false;
}
else
{
return base.OnKeyDown(keyCode, e);
}
}
}
private void Timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
sftc = 0;
}
}
public class ExtWebViewClient : Android.Webkit.WebViewClient
{
/// <summary>
/// 響應超鏈接事件,通過改變Load加載方式,
/// 使在WebView控件中的連接在當前視圖中打開,而不是新窗口中打開
/// </summary>
/// <param name="view"></param>
/// <param name="url"></param>
/// <returns></returns>
public override bool ShouldOverrideUrlLoading(WebView view, string url)
{
//默認
//return base.ShouldOverrideUrlLoading(view, url);
view.LoadUrl(url);
return true;
}
}
}