Tag: ios11

IOS11上的Gboard运行缓慢。 但是有一个解决方法!

自一段时间以来首次发布以来,我一直在IOS上使用Gboard 。 我喜欢并发现它比可用的固有键盘选项更好。 集成的滑动功能,语音转文本,谷歌搜索和GIF搜索是我最常用的功能。 但是,迟到了,Gboard真的很慢。 太慢了,我什至删除了几天。 我只是无法理解这种经历变得多么可怕。 我搜寻了互联网,但找不到能解决我问题的具体方法。 当IOS11发布时,整体体验变得越来越糟。 不仅现在键盘真的很慢,而且每次我想键入东西时,默认情况下都会显示字母“ Q ”。 最后,经过大量研究并详细浏览了该应用程序,我认为我找到了使Gboard尽可能平稳运行的最佳方法。 因此,在不浪费大量时间的情况下,执行以下步骤: 在您的IOS设备上打开Gboard应用。 您可以搜索它,或浏览到显示应用程序图标的屏幕。 转到语言,并确保仅安装最重要的语言。 转到键盘设置 ,然后关闭语音输入和字符预览 。 同时单击页面底部的“ 清除我的词典 ”以清除所有损坏的缓存。 转到搜索设置 ,然后关闭预测搜索和联系人搜索 。 如果您仍然发现任何性能问题,则可以选择单击清除Gboard搜索历史记录 。 重启手机一次,就可以了。 Gboard是一款出色的键盘,功能丰富。 但是,就像所有已连接的应用程序一样,这在与互联网交互以提高用户性能时也存在一些问题。 因此,请不要着急尝试这些步骤以提高性能。

在iOS 11和Swift 4中拖放集合视图单元格

在本教程中,我们将说明如何在iPhone IOS 11中的同一屏幕上的两个集合视图中拖放集合视图单元格。在IOS 11中,苹果引入了两种协议类型UICollectionViewDragDelegate和UICollectionViewDropDelegate,通过使用这些协议方法,我们可以将一个集合视图单元格从一个集合视图拖放到另一个集合视图。 注意:-请注意, iPhone和iPad均支持拖放功能,在iPad上,不同应用程序,同一应用程序和同一屏幕之间可使用拖放功能,但在iPhone中,仅可在相似屏幕上使用拖放功能。 首先创建基础项目 通过使用CollectionViewDataSource和CollectionViewDelegate方法在同一屏幕上创建带有两个collectionView的基础项目。 您可以从此处下载基础项目。 现在,我们开始拖放代理,将CollectionViewCell从FirstCollectionView移至SecondCollectionView。 拖动集合视图单元格(UICollectionViewDragDelegateprotocol) 首先,我们需要实现拖动委托的itemsForBeginning方法,其中我们需要返回UIDragItem的数组。 注意:-必须记住将dragDelegate设置为self。 并启用dragInteraction。 override func viewDidLoad() { super.viewDidLoad() topCollectionView?.dragDelegate = self topCollectionView.dragInteractionEnabled = true } itemsForBeginning- >提供项目以开始与给定indexPath相关联的拖动。 如果返回一个空数组,则拖动会话将不会开始。 为了创建UIDragItem,首先我们需要创建NSItemProvider,并将该项目提供者传递到UIDragItem(itemProvider 🙂 extension ViewController: UICollectionViewDragDelegate { func collectionView(_ collectionView: UICollectionView, itemsForBeginning session: UIDragSession, at indexPath: IndexPath) -> [UIDragItem] { let dragItem = self.dragItem(forPhotoAt: indexPath) return [dragItem] […]

创建适用于iOS 11的邮件垃圾邮件过滤器扩展。

在某些国家/地区,垃圾短信是一个真正的问题。 人们从餐厅点菜或参加购物中心的“幸运大抽奖”时,无辜地给出了他们的电话号码。 但是不久之后,他们每天都会遭到数十条促销短信的轰炸。 与电子邮件不同,这些广告文字中的许多没有取消订阅的任何机制,其中一些也可能是骗局。 您可以删除消息,或者拒绝呼叫,然后继续前进,但是一种更永久的解决方案是完全阻止这些人,从而防止他们的文本到达您,直到您另行决定为止。 感谢iOS 11的IdentityLookup框架。 Apple引入了IdentityLookup框架,该框架允许开发人员过滤不需要的SMS和MMS。IdentityLookup仅适用于来自未知发件人的SMS和MMS消息。 它不适用于用户“联系人”列表中发件人的消息或任何来源的iMessage消息。 当用户从未知发件人处收到SMS或MMS消息时,“消息”应用程序可以询问您的“消息过滤器”应用程序扩展,以确定该消息是不请自来的还是不受欢迎的。 您的应用程序扩展程序可以通过使用自己的内置数据和逻辑,或通过由关联服务器进行的分析来做出此确定。 第一步将打开Xcode(9.0+)并创建一个新项目。 然后从Xcode菜单中选择File / New / Target,然后选择Message Filter Extension。 在您的扩展中,有一个继承自Xcode自动创建的ILMessageFilterQueryRequest的类。 消息应用程序使用ILMessageFilterQueryRequest对象将有关消息的信息传递到消息过滤器应用程序扩展。 如果您的应用程序扩展可以确定该消息是否有害,则将其决策返回给ILMessageFilterQueryResponse对象中的Messages。 它也符合ILMessageFilterQueryHandling 具有单一要求的协议,即handle(_ queryRequest:context:completion 🙂方法。 在此方法中,传递了类型为ILMessageFilterQueryRequest的queryRequest对象,并可以访问消息的发送者和messageBody 。 要将邮件视为垃圾邮件,必须将ILMessageFilterAction的对象设置为.filter,其他 选项.none和.allow将无效,该消息将正常显示。 如果要防止显示该消息,则需要将操作类型设置为.filter。 其他两个选项.none和.allow将无效,该消息将正常显示。 以下是演示的代码段,如果包含关键字“交易”或“折扣”,则该邮件将被视为垃圾邮件。 在演示中,我将这些关键字设为静态。 将以下代码粘贴到MessageFilterExtension.swift文件中。 是的,我们已经完成了必要的代码!!! 下一步是使用任何具有iOS 11.0+的iPhone并在iPhone中运行扩展程序。 现在,从设置中启用邮件过滤。 请按照以下步骤在iPhone中启用消息筛选器。 •首先,通过选择所需的第三方SMS阻止程序,导航至“设置”>“消息”以启用该功能。 •在“邮件过滤”部分下,选择“ 未知和垃圾邮件” 。 •现在选择我们的应用程序,您将看到一个弹出窗口,其中包含与隐私相关的警告消息。 点击“ 启用 ”以在运行iOS 11的iPhone上激活垃圾邮件SMS过滤。 现在,从未保存的联系人发送包含关键字“折扣”或“交易”的邮件,您将在“ 邮件 ”应用中将该邮件作为垃圾邮件接收,而不会打扰您(无通知或声音)。 恭喜你! 您已经创建了一个应用程序,该应用程序可以阻止未保存的联系人发送的带有“折扣”或“交易”字样的消息。 我使用这个概念制作了App。 […]

Xcode 9.0 Beta(iOS 11上的无线调试)

调试。 通过网络无线调试iOS和tvOS设备,Metal的新调试器以及整个Xcode的更多功能。 源代码管理。 所有新的源代码控制导航器和对GitHub帐户的集成支持,可快速浏览存储库并将您的存储库推送到云中。 内置Xcode Server。 连续集成机器人可以在任何使用Xcode 9的Mac上运行,而无需安装macOS Server。 新的Playground模板。 包括旨在在iPad的Xcode和Swift Playgrounds中良好运行的iOS模板。 新的构建系统。 Xcode新构建系统的可选预览提供了改进的可靠性和性能。 无线调试 网络调试需要在MacOS 10.12.4或更高版本上运行的Xcode 9.0或更高版本,并且在设备上需要iOS 11.0或更高版本或tvOS 11.0或更高版本。 设置iPhone,iPad或iPod touch 选择“窗口”>“设备和模拟器”,然后在出现的窗口中,单击“设备”。 使用避雷线将设备连接到Mac。 在左列中,选择设备,然后在详细信息区域中,选择“通过网络连接”。 Xcode与您的设备配对。 如果Xcode可以使用网络与设备连接,则在左列中设备旁边会出现一个网络图标。

iOS 11只有崩溃的问题 – 当我点击一个标签栏应用程序崩溃

当我只从hometabviewcontroller点击一个特定的标签栏时,我得到以下崩溃错误。 这只发生在iOS 11.请帮我解决这个问题。 2017-10-23 16:48:57.000890+0400 FixtrProvider[2520:910402] desc: -[UIView refreshControl]: unrecognized selector sent to instance 0x10af090d0 2017-10-23 16:48:57.001223+0400 FixtrProvider[2520:910402] name: NSInvalidArgumentException 2017-10-23 16:48:57.001308+0400 FixtrProvider[2520:910402] user info: (null) 2017-10-23 16:48:57.001441+0400 FixtrProvider[2520:910402] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView refreshControl]: unrecognized selector sent to instance 0x10af090d0' 以下是根据请求我的HomeTabView控制器的整个页面。 @interface HomeTabBarController () { ChatSocketIOClient *socket; } @property […]

UIImage视图不显示在iOS 11 …如何解决?

我有一个在iOS的现有项目,它工作正常,直到iOS 10 ,更新X-Code 9 ,并运行项目的iOS 10是好的,但在iOS 11的UIImageview不显示.. 我已经尝试了很多方法,如干净的派生数据,重置清洁生成退出X代码和重新启动系统,删除和添加图像(PNG文件),但注意到发生。 即使我已经添加了背景颜色,但颜色也没有显示在设备和模拟器,但它是在故事板。 还有一件事情, UIButton上的背景图像正在显示,但在图像上不显示。 有没有人find解决办法?

如何在iOS 11的导航栏上设置大标题?

我正在为iOS 11或更高版本创build应用程序,要求在导航栏的左侧设置大标题。 请有人帮忙解决如何设置,它应该只适用于iOS 11或更高版本。 给我一些其他的build议,通过应用程序(支持iOS 8或更高版本)来维护此function。 提前致谢。

在iOS 11中导航标题视图问题

我正在面对iOS 11中导航栏项目的问题,如下面的截图所示,而两个栏button也不会执行任何button操作。 它在iOS 10.xx及以下的版本和相同的自动布局和大小完美的工作。 以下截图显示了自定义导航栏IB如何实现。 。 我也尝试了以下代码。 if (@available(iOS 11.0, *)) { [[self navigationController] navigationBar].prefersLargeTitles = NO; [[self navigationController] navigationItem].largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeNever; } ..但没有帮助。 请告诉我这里有什么问题,以及如何解决(任何自动布局问题?)。

请求NSPhotoLibraryAddUsageDescription权限

我试图将图像保存到iOS 10和11版本的照片应用程序。 因此,在iOS 11上,我需要请求NSPhotoLibraryAddUsageDescription权限,在iOS 10 NSPhotoLibraryUsageDescription 。 正如苹果文档所声称的那样 , [PHPhotoLibrary requestAuthorization:] 仅为 NSPhotoLibraryUsageDescription项获取权限。 如果您在Info.plist文件中同时拥有两个按键,并且在应用Info.plistselect了“仅将照片添加到照片”权限,则[PHPhotoLibrary authorizationStatus]将返回PHAuthorizationStatusDenied 。 有人知道如何处理这些权限?

无法连接到iOS 11模拟器上的任何HTTPSurl

去https://google.com结果在下面的屏幕。 这是一个iOS 11.0.1模拟器,我正在使用Xcode 9.0.1 我试过了多个HTTPSurl,而且都没有工作。 我试过这些修复,无济于事: 重新启动模拟器 Hardware > Erase All Content and Settings 模拟器的date/时间是正确的。