小编man*_*ank的帖子

Cordova 3 Android 插件 - 如何在主活动中调用函数?

编辑:用户 QuickFix 的回答对我有用。代码就在这个问题的底部。

我正在尝试编写一个 Cordova 3 Android 插件来制作普通和自定义 Toast。但是,我只是一名前端开发人员,对 Cordova 和 Android 非常陌生。我仍在学习,并希望您能提供任何帮助。

到目前为止,我已经成功地单独完成了这两项任务:

  1. 在主要活动中编写一个函数来制作普通和自定义 Toast(自定义 Toast 只是 /res/layout 中的一个 RelativeLayout,它显示了一个图标和一些文本)。
  2. 按照 Devgirl 的教程编写 Cordova 插件:如何为 Android 编写 PhoneGap 3.0 插件

我现在的问题是 - 如何让插件showCustomToast()在主活动中调用函数?正如您在下面的代码块 #2 中看到的那样,我遇到了如何获取主要活动以便我可以调用showCustomToast(). 这是我目前如何执行此操作的摘录:

// Problem?
HelloCordova main = (HelloCordova) cordova.getActivity();  
main.showCustomToast(toastTitle, toastText, duration);
Run Code Online (Sandbox Code Playgroud)

我必须强制转换cordova.getActivity()HelloCordova,否则它不会识别它具有showCustomToast()功能。但这肯定不是正确的方法,尽管它确实“有效”,即我能够在应用程序中显示自定义 Toast。我不禁觉得我完全以错误的方式解决了这个问题。目前它不完全是一个可重用的插件!

如果有人能让我走上实现这一目标的正确道路,我将不胜感激。例如,我是否应该完全放弃插件而只做这个

这是我的第一个 Stackoverflow 问题,所以如果我应该更改或澄清任何内容,请告诉我。谢谢阅读!!

这是我现有的代码:

代码块 #1

这个HelloCordova类是在启动一个新的 Cordova …

java plugins android cordova

3
推荐指数
1
解决办法
5616
查看次数

标签 统计

android ×1

cordova ×1

java ×1

plugins ×1