objective c - Core Data and a UIActivityViewController -


i have app using core data persist data. have uiactivityviewcontroller setup on main vc. working expect to.

my question when go grab items core data model, how have give every item within model?

should using predicate sort items?

edit

this uiactivityviewcontroller setup. know of uiactivityviewcontroller actions dont show in sim fine. using email action show up. see nsstring , nsurl show without problem itemnames nsarray not showing up. should show in sim?

- (ibaction)shareitem:(id)sender {  nsstring *texttoshare = @"this random text put here"; nsurl *mywebsite = [nsurl urlwithstring:@"http://www.martylavender.com/"];  nsfetchrequest *fetchrequest = [nsfetchrequest fetchrequestwithentityname:@"item"]; fetchrequest.resulttype = nsdictionaryresulttype;  nserror *error      = nil; nsarray *results    = [self.managedobjectcontext executefetchrequest:fetchrequest error:&error];  nsmutablearray *itemnames = [results valueforkey:@"itemname"];  nsarray *objectstoshare = @[texttoshare, mywebsite, itemnames];  uiactivityviewcontroller *activityvc = [[uiactivityviewcontroller alloc] initwithactivityitems:objectstoshare applicationactivities:nil];  nsarray *excludeactivities = @[uiactivitytypeairdrop,                                uiactivitytypeprint,                                uiactivitytypeposttotwitter,                                uiactivitytypeassigntocontact,                                uiactivitytypesavetocameraroll,                                uiactivitytypeaddtoreadinglist,                                uiactivitytypeposttoflickr,                                uiactivitytypeposttovimeo];  activityvc.excludedactivitytypes = excludeactivities;  [self presentviewcontroller:activityvc animated:yes completion:nil]; nslog(@"%@", itemnames);  } 

i see items printed out in console. perhaps wont display in sim?

edit

i think may know why doesnt show up. uiactivitytypemail says supports: string, attributed string, , url. data, image, asset not supported.

edit

ok figured out. needed take nsmutablearray , cast nsstring. nsstring has method take array , stick string you. has inverse take string , stick array. being said.

here updated code. need figure out how format text once placed in email , golden.

- (ibaction)shareitem:(id)sender {  nsstring *texttoshare = @"this random text put here"; nsurl *mywebsite = [nsurl urlwithstring:@"http://www.martylavender.com/"];  nsfetchrequest *fetchrequest = [nsfetchrequest fetchrequestwithentityname:@"item"]; fetchrequest.resulttype = nsdictionaryresulttype;  nserror *error      = nil; nsarray *results    = [self.managedobjectcontext executefetchrequest:fetchrequest error:&error]; nsmutablearray *itemnames = [results valueforkey:@"itemname"]; nsstring *names = [itemnames componentsjoinedbystring:@""]; nslog(@"%@",names);    nsarray *objectstoshare = @[texttoshare, mywebsite, names];  uiactivityviewcontroller *activityvc = [[uiactivityviewcontroller alloc] initwithactivityitems:objectstoshare applicationactivities:nil];  nsarray *excludeactivities = @[uiactivitytypeairdrop,                                uiactivitytypeprint,                                uiactivitytypeposttotwitter,                                uiactivitytypeassigntocontact,                                uiactivitytypesavetocameraroll,                                uiactivitytypeaddtoreadinglist,                                uiactivitytypeposttoflickr,                                uiactivitytypeposttovimeo];  activityvc.excludedactivitytypes = excludeactivities;  [self presentviewcontroller:activityvc animated:yes completion:nil]; } 

edit

i totally on complicate things seems. dropped \n in here: nsstring *names = [itemnames componentsjoinedbystring:@""]; , has them dropping new line after each item.

- (ibaction)shareitem:(id)sender {  nsstring *texttoshare = @"this random text put here"; nsurl *mywebsite = [nsurl urlwithstring:@"http://www.martylavender.com/"];  nsfetchrequest *fetchrequest = [nsfetchrequest fetchrequestwithentityname:@"item"]; fetchrequest.resulttype = nsdictionaryresulttype;  nserror *error      = nil; nsarray *results    = [self.managedobjectcontext executefetchrequest:fetchrequest error:&error]; nsmutablearray *itemnames = [results valueforkey:@"itemname"]; nsstring *names = [itemnames componentsjoinedbystring:@" \n"]; nslog(@"%@",names);    nsarray *objectstoshare = @[texttoshare, mywebsite, names];  uiactivityviewcontroller *activityvc = [[uiactivityviewcontroller alloc] initwithactivityitems:objectstoshare applicationactivities:nil];  nsarray *excludeactivities = @[uiactivitytypeairdrop,                                uiactivitytypeprint,                                uiactivitytypeposttotwitter,                                uiactivitytypeassigntocontact,                                uiactivitytypesavetocameraroll,                                uiactivitytypeaddtoreadinglist,                                uiactivitytypeposttoflickr,                                uiactivitytypeposttovimeo];  activityvc.excludedactivitytypes = excludeactivities;  [self presentviewcontroller:activityvc animated:yes completion:nil]; } 

edit

i totally on complicate things seems. dropped \n in here: nsstring *names = [itemnames componentsjoinedbystring:@""]; , has them dropping new line after each item.


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -