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 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

jquery 中datepicker 插件 问题

iOS PhoneGap 1.7.0 + 条码扫描插件问题

Phonegap 插件可以在 CLI 上运行吗?

如何在phonegap中为ios添加插件?

Phonegap中ios的蓝牙插件

如何在 Xcode 中使用 Phonegap 插件?