我能够在没有Mac的情况下从我的电脑制作一个完整的iPhone应用程序,在iphone上运行得很好。
我使用openSSL创建了认证和配置,使用sencha Architect试用版创建了应用程序,然后将app.html复制到index.html,将其全部上传到phonegap-build网站,我发现了一个有效的app(和一个复杂的应用程序)应用它是在Android和iPhone上运行。
但是,当我想添加phonegap联系人的代码时,我需要添加回调代码。 我正在寻找一种快速的方法来检查我的phonegap联系人是否全部工作... onKb1ButtonTapped上的按钮(我对按钮的点击处理程序的名称)如下所示:
options = new ContactFindOptions();
//options.filter="bob" 'nothing will return if you don't have a bob.
options.multiple=True;
fields = ["displayName", "name"];
navigator.contacts.find(fields, onContactsFound, onContactsError, options);
现在我需要添加onContactsFound和onContactsError代码。
我在Architect2的哪个位置/怎么做?
如果我们已经在讨论,如何使用数据存储和代理将联系人读入我的列表?
在Architect中可用的商店和代理中,最相关的似乎是REST代理(需要覆盖哪些操作调用新的创建读取更新和删除功能)这是正确的吗?
内存存储似乎是最好的存储(但我不确定 - 这是否意味着我将丢失phonegap的返回联系人对象,或者我应该使用模型,并且将返回的模型数组商店丢了?
并且......最后但并非最不重要的是,什么时候是Sencha原生(包装)联系人对象?
Sencha,感谢您的出色工作!我喜欢你的产品。
与Phonegap人一样!
摩西
答案 0 :(得分:0)
问题是Sencha Architect中的右大括号位于事件处理程序中。
好的,我现在知道两种方法:
一个。从这里回答 http://www.sencha.com/learn/a-sencha-touch-mvc-application-with-phonegap/
我可以使用内联函数。
而不是写作:
options = new ContactFindOptions();
//options.filter="bob" 'nothing will return if you don't have a bob.
options.multiple=True;
fields = ["displayName", "name"];
navigator.contacts.find(fields, onContactsFound, onContactsError, options);
我只是使用这样的东西
options = new ContactFindOptions();
//options.filter="bob" 'nothing will return if you don't have a bob.
options.multiple=True;
fields = ["displayName", "name"];
navigator.contacts.find(fields,
function(contacts){
// do here whatever needed with contacts
},
function(contactsError){
// do here whatever you want with error
, options);
======
另一个选项是在Architect中转到控制器文件(您可能通过向按钮添加事件绑定,然后将其转换为操作来创建),然后覆盖CODE。然后在覆盖代码中,在main方法之后添加你想要的任何东西。