Get contact details to titanium from native iOS co

2019-05-30 19:09发布

I'm new to Titanium. Currently I'm working on a project in this the user needs to use the contact details from iOS contacts App.

My app.js looks like this

Window = require('ui/handheld/ApplicationWindow');
var win = Window();
win.open();
var button = Ti.UI.createButton({
    title : 'Show Contacts',
    width : 100,
    height: 50,
});
win.add(button);
button.addEventListener('click',function(e){
    Titanium.Contacts.showContacts({ });
});

When I click on a button the following code is displayed:

Contact list

And when I select an contact the detail is displayed on the other screen:

Contact details

But I don't want this, When the user selects an individual contact the details should be passed to my app.js file. And no need to go to the details page.

Is there any way to do this ? Please help me. Thanks in advance.

3条回答
男人必须洒脱
2楼-- · 2019-05-30 19:35

Finally I got it.

I used the following code:

button.addEventListener('click',function(e){
    Titanium.Contacts.showContacts(values);
});
var values = {cancel:function(){}};
values.fields = ['firstName', 'lastName', 'phone'];

values.selectedProperty = function(e) {
                var cn = e.person.firstName; 
                var sn = e.person.lastName;
                alert('Name'+cn+' '+sn);
};

Reference : Titanium Contacts

查看更多
我命由我不由天
3楼-- · 2019-05-30 19:40
var parms = {
animated : true,
selectedPerson : function(e) {
    alert(e.person);
}

}; Titanium.Contacts.showContacts(parms);

You will get the details of selected person in e.person object. that can be passed to app.js etc according to your requirements. i just showed it in the alert.

查看更多
▲ chillily
4楼-- · 2019-05-30 19:52

It seems that you're missing a declaration of function to be called when a person is selected:

Titanium.Contacts.showContacts({/*missing selectedPerson callback object*/});

You can read more on what parameters can be passed into showContacts method here.

查看更多
登录 后发表回答