<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>提示框</title>
<script type="text/javascript">
document.addEventListener('plusready', function() {
//console.log("所有plus api都应该在此事件发生后调用,否则会出现plus is undefined。"
judgePlatform();
});
//Native API具有平台依赖性,所以需要通过以下方式判断当前的运行平台:
function judgePlatform() {
switch(plus.os.name) {
case "Android":
alert("Android");
debugger;
// Android平台: plus.android.*
// var activity= plus.android.runtimeMainActivity();
// console.log(activity);
//调用原生的弹框
njsAlertForAndroid();
break;
case "iOS":
// iOS平台: plus.ios.*
alert("iOS");
break;
default:
alert("其它平台");
// 其它平台
break;
}
}
/**
* 在Android平台通过NJS显示系统提示框
*/
function njsAlertForAndroid() {
// 导入AlertDialog类
var AlertDialog = plus.android.importClass("android.app.AlertDialog");
// 创建提示框构造对象,构造函数需要提供程序全局环境对象,通过plus.android.runtimeMainActivity()方法获取
//注意:NJS代码中创建提示框构造对象要求传入程序全局环境对象,可通过plus.android.runtimeMainActivity()方法获取应用的主Activity对象,它是HTML5+应用运行期自动创建的程序全局环境对象。
var dlg = new AlertDialog.Builder(plus.android.runtimeMainActivity());
// 设置提示框标题
dlg.setTitle("自定义标题");
// 设置提示框内容
dlg.setMessage("使用NJS的原生弹出框,可自定义弹出框的标题、按钮");
// 设置提示框按钮
dlg.setPositiveButton("确定(或者其他字符)", null);
// 显示提示框
dlg.show();
}
/**
* 在iOS平台通过NJS显示系统提示框
*/
function njsAlertForiOS() {
// 导入UIAlertView类
var UIAlertView = plus.ios.importClass("UIAlertView");
// 创建UIAlertView类的实例对象
var view = new UIAlertView();
// 设置提示对话上的内容
view.initWithTitlemessagedelegatecancelButtonTitleotherButtonTitles("自定义标题" // 提示框标题
, "使用NJS的原生弹出框,可自定义弹出框的标题、按钮" // 提示框上显示的内容
, null // 操作提示框后的通知代理对象,暂不设置
, "确定(或者其他字符)" // 提示框上取消按钮的文字
, null); // 提示框上其它按钮的文字,设置为null表示不显示
// 调用show方法显示提示对话框,在JS中使用()语法调用对象的方法
view.show();
}
</script>
</head>
<body>
</body>
</html>
Native.js 原生方法-弹出对话框
最新推荐文章于 2024-05-10 09:56:17 发布