DatePicker 插件在 PhoneGap 1.5 中不起作用
Posted
技术标签:
【中文标题】DatePicker 插件在 PhoneGap 1.5 中不起作用【英文标题】:DatePicker plugin is not working in PhoneGap 1.5 【发布时间】:2012-04-01 10:48:49 【问题描述】:我正在尝试为 ios 使用 PhoneGap DatePicker 插件(Xcode 4.2 中的 PhoneGap 1.5 (Cordova))。我将 DatePicker.h 和 DatePicker.m 文件添加到 Plugins 文件夹和 DatePicker.js 到 www 文件夹。此外,我编辑了 Cordova.plist 文件,为 DatePicker 插件添加了一个新条目,其中“DatePicker”作为键,“DatePicker”作为值。我正在使用以下代码来显示 DatePicker
var cb = function(date)
console.log(date.toString());
document.getElementById("date").innerhtml = date.toString();
var show = function(mode)
plugins.datePicker.show(
date: new Date(),
mode: mode, //date or time or blank for both
allowOldDates: false
, cb);
但它不起作用。有什么建议吗?
【问题讨论】:
我没有收到错误。只是日期选择器没有显示! 你试过降级到 1.4.1 并检查过吗? DatePicker 在 1.5 和 Xcode 4.3 上对我来说很好用。在纵向模式下,它在横向模式下被打破。首先我没有更新 .plist 文件,并且出现了一些错误,但是在我更新 Cordova.plist 之后它可以工作了。 【参考方案1】:在 phonegap 开发过程中,我曾经使用以下方法来确定插件无法正常工作的原因:
为此,我使用Weinre。启动 weinre 服务器,在您的页面中包含 weinre javascript,并将您的应用程序部署到同一(无线)网络中或在 iOS 模拟器上运行的设备。 (不要忘记在以前命名为 Phonegap.plist 的文件中的 ExternalHosts 键下包含 weinre 服务器 ip 地址)
现在,当应用程序运行时,可以进入调试控制台并检查 window.plugins 的值。您只需在控制台中输入window.plugins
即可。
如果您没有看到列出的插件,则需要检查 .m
和 .h
文件是否正确添加到项目中。在 Xcode 中很容易出错,并且不小心通过引用包含它们。
如果插件可用,您可以直接尝试使用 Weinre 远程调试控制台调用它。如果出现任何错误,您还应该得到一些好的反馈。
此时您通常已经确定了错误。如果 datepicker 可用于 phonegap 但仍不能正常运行,您现在可以在 .m
文件中设置断点并在 XCode 的 iOS 模拟器上以调试模式运行应用程序。现在逐步跟踪插件代码以找出原生 iOS 代码不起作用的原因。
【讨论】:
以上是关于DatePicker 插件在 PhoneGap 1.5 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章