首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问ButtonAction上的联系人并执行Segue

访问ButtonAction上的联系人并执行Segue
EN

Stack Overflow用户
提问于 2014-10-20 13:09:54
回答 1查看 38关注 0票数 0

嗨,我目前正在为一个客户项目工作,在那里我需要访问电话联系人。

我设法请求访问联系人的权限,我正在处理这两个不同的状态(授予,拒绝)。显然,客户需要以下工作流:

  • 按下添加按钮
  • 请求许可
  • 授予:对包含所有联系人的tablewview执行一个segue
  • 拒绝:对一个不同的视图执行一个segue命令,并继续在inital按钮点击时请求授予对该控件的访问权限。

我管理了完整的流程并获取了完整的数据。不,我困在两个问题上:

  1. 我无法再次弹出请求权限警报视图(据我了解,用户需要在应用程序设置->App隐私设置中设置此设置)。这是正确的吗?
  2. 看起来,如果第一次授予访问权,并且我执行了一个segue,那么tableview是空的,因为数据数组是零(我不知道为什么)。

  • (AddButtonTouched){ self.addressBook accessAddressBook;self.activityView startActivityViewWithMessage:@“稍等一秒钟”;if (access) { self.contactsArray = self.addressBook getAllContacts;if (self.contactsArray.count = 0) { self performSegueWithIdentifier:@"addEntrySegue“发送方: self;}self.activityView{自助sender:@”noContactsSegue“发件人:self;}}

我是不是快到下一个ViewController去填self.contactsArray了?

我的另一种方法是在授予访问权限时向我的rootViewController发送一个Notifictaion,然后执行segue。这是我能得到的最接近的结果,但是ViewController推送延迟了8-10秒.

代码语言:javascript
复制
>     - (void)receivedNotification:(NSNotification *)notification {
>         if (access) {
>             self.contactsArray = [self.addressBook getAllContacts];
>             if (self.contactsArray.count != 0) {
>                 [self performSegueWithIdentifier:@"addEntryrSegue" sender:self];
>             } else {
>                 [self performSegueWithIdentifier:@"noContactsSegue" sender:self];
>             }
>         }
>     }

提前谢谢。我希望我得到的解释足够充分。

EN

回答 1

Stack Overflow用户

发布于 2014-12-31 22:35:41

  1. 是。用户必须从设置中手动重新启用它.您最好的选择可能是创建备用视图,并说明如何接受它。
  2. 数组中填充了所有联系人。你想确保你做了两件事。一个:桌子上的reloadData()。第二:确保正确处理异步操作。因此,处理这一问题的最佳方法是像这样运行代码: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,dispatch_queue_t =dispatch_queue_t 0ul);dispatch_async(队列,^{ //填充数组,此处有联系人)。运行这个函数。不管你需要做什么都到这里来。dispatch_sync(dispatch_get_main_queue(),^{ //重新分配表)。不管你想改变什么UI,都到这里去。});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26466516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档