- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想找出一种方法,如果用户按下 ABPeoplePickerNavigationController
中的“取消”按钮(我认为不能删除), View Controller 要么不会关闭,或将自动重新打开。
例如,给定以下内容:
var picker = ABPeoplePickerNavigationController()
picker.peoplePickerDelegate = self
self.presentViewController(picker, animated: true, completion: nil)
我希望能够做类似的事情:
if (self.presentedViewController != picker && !userContinuedPastPicker) {
//where userContinuedPastPicker is a boolean set to false
//in a delegate method called when the user clicks on an a contact
//(meaning the user didn't press the cancel button but instead clicked on a contact)
//create and present a UIAlertAction informing the user they must select a contact
//present picker again
self.presentViewController(picker, animated: true, completion: nil)
}
这行不通;但是,因为 if
语句不会“等待”直到用户按下取消按钮或按下联系人。
最佳答案
我不确定是否有办法删除取消按钮或阻止它工作,但您可以响应 func peoplePickerNavigationControllerDidCancel(_ peoplePicker: ABPeoplePickerNavigationController!)
委托(delegate)来处理按下取消按钮的情况。
我建议不要立即重新打开选择器,而是打开一个警告告诉用户他们需要选择某人,然后从那里重新打开它。如果他们取消并立即重新打开,它可能会感觉损坏。
编辑:
呈现警报或选择器可能需要延迟足够长的时间才能关闭前一个选择器。 dispatch_after
关于ios - Swift:防止 ABPeoplePickerNavigationController 关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32149823/
我想调出用户的地址簿,并使用新的 PeoplePicker Controller 对结果进行切片,以仅显示与特定术语匹配的结果。我看到 UIPeoplePickerNavigationControll
我的联系人列表在模拟器中完美显示。它获取电话号码并将其放入文本框中。所以我决定在我的 iPhone 上尝试一下,它实际上执行了我点击的东西。它会调用该号码,而不是将号码放入文本框中。代码如下: - (
有什么方法可以自定义 ABPeoplePickerNavController 数据源吗?我的意思是,我不需要从手机的地址簿中获取成员,而是需要它从数组中获取数据,例如在我的应用程序中。我将从服务器获取
您好,我有一个 ABPeoplePickerNavigationController,在创建时设置其导航栏隐藏。 peoplePickerController.navigationBar.hidden
联系人应用程序中有一个“添加即时消息”按钮。有一些预定义的,如 Skype、MSN、Facebook 等,但您可以添加自定义的。 但是,如果您添加自定义即时消息地址,并使用 ABPeoplePicke
我有一个核心数据堆栈,其中包含一个名为“客户端”的实体。每个客户端都有一个“addressBookID”属性,它指的是地址簿中个人记录的唯一ID。我目前正在使用 fetchedResultsContr
我想使用 ABPeoplePickerNavigationController 但我想自定义 View 。我想要一些联系人的附件图像,并且我想以不同于默认方式的方式对它们进行排序。有办法吗?还是我必须
在使用 ABPeoplePickerNavigationController 时,didSelecPerson 委托(delegate)将在用户选择一个人时被调用,然后 ABPeoplePickerN
Apple 提供了一个名为 PeoplePicker 的示例项目,它启动了一个仅包含具有电子邮件地址的联系人的 ABPeoplePickerNavigationController: ABPeople
我正在检查我的应用程序以消除所有内存泄漏,分析工具使用 abpeoplepickernavigationcontroller 发现了一个泄漏。 我知道这与复制方法有关?但不知道如何在编写时的位置和时间
我只在模拟器中遇到此崩溃。在真实设备上它可以正常工作和调试。(因此它不是太重要,但我正在做一个演示文稿,模拟器很方便。) - (BOOL)peoplePickerNavigationControlle
当使用 ABPeoplePickerNavigationController 时,加载和显示控件需要一些时间(~0.5 秒),这比其他弹出窗口的正常 react 时间要慢。 我的解决方案是将 Cont
我正在使用此代码在应用中显示联系人。 - (IBAction) selectContact:(id)sender { ABPeoplePickerNavigationController *p
几周来我一直在寻找解决方案,这让我几近绝望。 问题很简单: 通过 ABPeoplePickerNavigationController(作为 ModalView),应该选择一个人。 然后仅(例如)显示
我正在对 ABPeoplePickerNavigationController 进行子类化,我想知道如何隐藏正确的工具栏项“Cancel”? 我一直在寻找,但找不到合适的解决方案。 谢谢! 最佳答案
我正在使用 ABPeoplePickerNavigationController 由用户选择地址簿联系人。使用此代码隐藏按钮操作: ABPeoplePickerNavigationController
我想提示用户从地址簿中选择 1 个或多个人,但 ABPeoplePickerNavigationController 不允许这样做(这很讽刺,因为这是人 选择器,而不是人选择器)。 在我创建自己的 C
我在我的应用程序中将 ABPeoplePickerNavigationController 显示为选项卡。用户点击姓名,然后点击电子邮件地址,然后我对电子邮件地址执行一些操作。 之后,我希望他们选择的
我正在使用 ABPeoplePicker 显示联系人列表。 我想过滤此联系人列表,仅显示具有电子邮件地址的联系人。我该怎么做? 最佳答案 我需要它,所以我开始做类似的事情。查看https://gith
我最近将我的 iPhone 和 Xcode 从 iOS 6 升级到 iOS 8,并且遇到了从 ABPeoplePickerNavigationController 选择电话号码或电子邮件地址时执行“默
我是一名优秀的程序员,十分优秀!