目录结构如下:

以上三个用红色框勾出的地方是需要修改的文件夹。

首先:添加java代码。

在src目录下新建一个包裹:org.apache.cordova

在该包裹下新建类:ToastPlugin.java

代码如下:

  1. package org.apache.cordova;
  2. import org.apache.cordova.api.CallbackContext;
  3. import org.apache.cordova.api.CordovaInterface;
  4. import org.apache.cordova.api.CordovaPlugin;
  5. import org.json.JSONArray;
  6. import org.json.JSONException;
  7. import android.util.Log;
  8. import android.widget.Toast;
  9. public class ToastPlugin extends CordovaPlugin {
  10. public static String TOAST = "toast";
  11. public boolean execute(String action, JSONArray data,
  12. CallbackContext callbackContext) throws JSONException {
  13. if (TOAST.equals(action)) {
  14. Log.i(TOAST, "message:"+data.getString(0)+",length:"+data.getInt(1));
  15. toast(data.getString(0), data.getInt(1), callbackContext);
  16. }
  17. return false;
  18. }
  19. public synchronized void toast(final String message, final int length,
  20. CallbackContext callbackContext) {
  21. final CordovaInterface cordova = this.cordova;
  22. Runnable runnable = new Runnable() {
  23. public void run() {
  24. Toast.makeText(cordova.getActivity(), message,length).show();
  25. }
  26. };
  27. this.cordova.getActivity().runOnUiThread(runnable);
  28. }
  29. }

然后在assets-www-js文件中新建phonegap-toast.js
代码如下:

  1. var toast = function(){};
  2. toast.prototype = {
  3. ShowToast:function(content,length){
  4. return cordova.exec(null, null,"ToastPlugin","toast",[content,length]);
  5. }
  6. };
  7. cordova.addConstructor(function(){
  8. if (!window.plugins) {
  9. window.plugins = {};
  10. }
  11. window.plugins.ToastPlugin = new toast();
  12.  
  13. });

最后在res-xml文件中修改config.xml文件

在widget节点中添加如下节点:

  1. <plugin name="ToastPlugin" value="org.apache.cordova.ToastPlugin"/>

使用:

在你要使用toast的html文件中引入js文件:

<script type="text/javascript" src="js/phonegap-toast.js"></script>

调用方法:

window.plugins.ToastPlugin.ShowToast('通讯录',3000);//第一个参数为显示的内容,第二个参数是显示的时间,单位ms

参考资料:http://blog.sina.com.cn/s/blog_c2918c770101bf1u.html

phonegap 2.8.1 toast的更多相关文章

  1. Nova PhoneGap框架 第一章 前言

    Nova PhoneGap Framework诞生于2012年11月,从第一个版本的发布到现在,这个框架经历了多个项目的考验.一直以来我们也持续更新这个框架,使其不断完善.到现在,这个框架已比较稳定了 ...

  2. android 从 phonegap 到 js webview 交互

    像生活类.办公协同类. 动态添加,下载等. 1.phonegap 我这里用了旧的版本,可能新版本变化大了. 创建asset资源文件夹,然后新建index.html copy 相应的js 文件进来. 创 ...

  3. android之phonegap入门

    利用phoneGap可以利用HTML开发安卓应用,是web app的一种,可以有效的提高开发效率,降低开发成本 . 第一步: 开发环境配置以及基本操作请参考其它文档. 新增一个名为 phoneGap ...

  4. Android用PhoneGap封装webapp在android代码中实现连按退出和loadingpage

    用PhoneGap封装后的程序有一些瑕疵,比如启动时黑屏,菜单按钮和返回按钮不好控制等. PhoneGap也在github提交的它的源码(版本:2.8): https://github.com/apa ...

  5. Phonegap 自定义插件

    一.PhoneGap中js与Java之间相互调用分为同步和异步两种方式 1.同步:js调用Java类的方法,然后Java类的方法直接返回一个值给js端 2.异步:js调用Java类的方法,Java类的 ...

  6. Toast显示图文界面——Android开发之路1

    Toast的多种使用方法 Toast其实是一个功能特别强大的组件,不仅仅可以吐司一个文本内容,还可以吐司图片以及图文混排的界面.具体用法如下: 第一种:简单的纯文本内容的吐司: Toast.makeT ...

  7. Nova PhoneGap框架 总结

    Nova PhoneGap Framework 是完全针对PhoneGap应用程序量身定做的,在这个框架下开发的应用程序很容易实现高质量的代码,很容易让程序拥有很好的性能和用户体验. 在经历了多个项目 ...

  8. Nova PhoneGap框架 第十章 开发环境

    10.1 Visual Studio + ReSharper PhoneGap程序由HTML.CSS和JS编写而成,这3种语言的编写你都可以用记事本来完成,但显然效率比较低,出错的概率也比较大.一个强 ...

  9. 【完全开源】知乎日报UWP版:增加Live磁贴、Badge、以及Toast通知

    目录 说明 实现方法 APP生命期 后台任务 说明 之前网上有人建议增加磁贴(tile).徽章(badge)功能.利用周末的时间,将这两个功能添加上去了.如果将磁贴固定到开始屏幕,磁贴就会循环播放首页 ...

随机推荐

  1. 总结iOS 8和Xcode 6的各种坑

    模拟器的路径从之前的~/Library/Application Support/iPhone Simulator移动到了~/Library/Developer/CoreSimulator/Device ...

  2. Deferred

    http://blog.allenm.me/2012/01/jquery_deferred_promise_method/ http://www.ruanyifeng.com/blog/2011/08 ...

  3. LA 3521 Joseph's Problem

    题意:给你正整数n和k,然后计算从i到n k%i的和: 思路:如果n小于1000000,直接暴力计算,然后大于1000000的情况,然后在讨论n和k的大小,根据k%i的情况,你会发现规律,是多个等差数 ...

  4. js和jsp

    1.js中的字符串赋值可以用' '或者" ". alert('1111'); alert("1111"); document.getElementById('d ...

  5. table 的边框变细

    table { border-width: 0px 0px 1px 1px; border-style:solid;border-color:black} td { border-width: 1px ...

  6. Qt入门(11)——Qt插件

    Qt提供了一个简单地插件接口,可以轻松地生成作为独立组件的定制数据库驱动.图象格式.文本编解码器(text codec).风格(style)和部件.警告:Qt 3.0.5对插件的一些方面做了改变,具体 ...

  7. 开源代码搜索器searchcode

    项目主页:https://searchcode.com/ 查看API:https://searchcode.com/api/ 关于:https://searchcode.com/about/ Sear ...

  8. 动态规划(奇异状态):HNOI 2001 产品加工

     产品加工 某加工厂有A.B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成.由于受到机器性能和产品特性的限制,不同的机器加工同一产品所需的时间会不同,若同时由两台机器共同进行加 ...

  9. 【动态规划】Vijos P1218 数字游戏(NOIP2003普及组)

    题目链接: https://vijos.org/p/1218 题目大意: 一个N个数的环,分成M块,块内的数求和%10,最后每块地值累乘,求最大和最小. n(1≤n≤50)和m(1≤m≤9)太小了可以 ...

  10. [jAudio] JAVA上经典特征提取工具

    1.下载Jar包后引入 现在的问题是jAudio通常是给人UI进行操作的,直接使用怎么办? 看了源码,发现特征提取是通过类之间交叉调用实现的,是否有办法整合一下?