package com.html;
import com.sqlite.Dao.NcpRegisterDAO;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.webkit.JsResult;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.widget.Toast;
public class Register_protocolActivity extends Activity {
private Handler mHandler = new Handler();
private WebView mWebView;
private NcpRegisterDAO dao = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//踩上一腳,記錄有了就知道複位的時候要去哪裡
dao = new NcpRegisterDAO(Register_protocolActivity.this);
String name = "MainActivity";
dao.add_Stepped(name);
//隱藏標題列
//requestWindowFeature(Window.FEATURE_NO_TITLE);
//隱藏狀態列
//getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
//該ACTIVITY不需要layout設定,所以直接指向MainActivity的main
setContentView(R.layout.protocol);
//將WebView執行個體化
mWebView = (WebView) this.findViewById(R.id.webView);
//WebView開啟許可權
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mWebView.getSettings().setJavaScriptEnabled(true);
//WebView,SWF檔案運行許可權
mWebView.getSettings().setPluginsEnabled(true);
mWebView.addJavascriptInterface(new Action(), "ncp");
mWebView.loadUrl("file:///android_asset/protocol.html");
// 建立WebViewChromeClient
WebChromeClient wvcc = new WebChromeClient() {
// 處理Alert事件
public boolean onJsAlert(WebView view, String url, String message, final JsResult result) {
// 構建一個Builder來顯示網頁中的alert對話方塊
Builder builder = new Builder(Register_protocolActivity.this);
builder.setTitle("計算1+2的值");
builder.setMessage(message);
builder.setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
result.confirm();
}
});
builder.setCancelable(false);
builder.create();
builder.show();
return true;
}
// 處理Confirm事件
public boolean onJsConfirm(WebView view, String url, String message, final JsResult result) {
Builder builder = new Builder(Register_protocolActivity.this);
builder.setTitle("退出確認");
builder.setMessage(message);
builder.setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//result.confirm();
// 從協義開始到發送註冊資訊,這些步驟退出後直接清零複位表,不然如果非順利關機後再重啟會再次進入該頁
dao.Clear_NcpStep_Set0();
finish();
}
});
builder.setNeutralButton(android.R.string.cancel, new AlertDialog.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
result.cancel();
}
});
builder.setCancelable(false);
builder.create();
builder.show();
return true;
}
};
// 設定setWebChromeClient對象
mWebView.setWebChromeClient(wvcc);
}
final class Action {
Action() {
}
public void clickOnAndroid_register() {
mHandler.post(new Runnable() {
public void run() {
// mWebView.loadUrl("javascript:wave()");
Toast.makeText(getBaseContext(), "歡迎進入註冊!", Toast.LENGTH_SHORT).show();
//Intent intent = new Intent(MainActivity.this,Register.class);
Intent intent = new Intent(Register_protocolActivity.this,Register_IDcard.class);
Register_protocolActivity.this.startActivity(intent);
//設定切換動畫,從右邊進入,左邊退出
overridePendingTransition(R.xml.in_from_right, R.xml.out_to_left);
}
});
}
public void clickOnAndroid_quit() {
mHandler.post(new Runnable() {
public void run() {
finish();
}
});
}
}
//禁止回退
public void onBackPressed() {
// TODO Auto-generated method stub
return;
//super.onBackPressed();
}
@Override
protected void onStop() {
super.onStop();
System.out.println("onStop!!");
finish();
// The activity is no longer visible (it is now "stopped")
}
}
分享到: