在我的应用程序中,我将显示设置,如果设备支持3DTouch,这些设置应该是可见的。目前我检查设备是否有ios9。if#available(iOS9.0,*)问题是,例如iPhone6有iOS9但没有3DTouch。如何使用swift检查3DTouch的可能性?我找到了这篇文章,但没有快速解决方案:Checkif3DtouchissupportedandenabledontheiOS9device还有一个问题。现在我想检查iOS9和3DTouch是否可用。我试试这个:if(#available(iOS9.0,*))AND(is3DTouchAvailable()==true){但我总是得
我想为iPhone6s及更高版本的用户启用Peek&Pop,并包括3DTouch操作,但是我还想启用长按以将非3DTouch用户输入操作表。我了解如何使用peek和pop委托(delegate)方法,并且了解如何创建长按手势。我需要知道的是如何连接长按Action以显示peek预览和Action显示。 最佳答案 根据我在网上和文档中可以找到的所有内容,我现在相信Apple不允许您在非3DTouch设备上显示3DTouchUI。虽然这里的另一个答案是一个不错的选择(实现长按以在非3DTouch上执行操作),但我的原始问题目前没有答案。
如何测量应用于UIButton功能的3D触摸力?我想用它来快速更改AVAudioPlayer属性的音量。 最佳答案 您可以为所有UIView类\子类使用识别3D触摸的东西自定义类classcustomButton:UIButton{overridefunctouchesMoved(touches:Set,withEventevent:UIEvent?){fortouchintouches{print("%Touchpressure:\(touch.force/touch.maximumPossibleForce)");}}overr
我想为我的应用程序添加3D触摸功能,但InterfaceBuilder没有显示peek和pop选项。既不用于Actionsegues也不适用于手动转场。我的开发目标是iOS9.1,我使用的是Xcode7.2(7C68)。给了什么? 最佳答案 peek&pop(预览提交segues选项)只会出现在Interfacebuilder中,如果segue是从可点击或具有操作的UI元素启动的,例如UIButton、UITableViewCell或UICollectionViewCell等 关于ios
我想在3DTouchQuickAction项目中显示日期。如果用户没有打开应用程序,数据有什么办法可以刷新吗?现在,快速操作只会显示上次打开应用的日期,而不是当前日期。是否可以显示当前信息,或者是否有一些不允许的后台进程?AppDelegate:funcapplication(_application:UIApplication,didFinishLaunchingWithOptionslaunchOptions:[UIApplicationLaunchOptionsKey:Any]?)->Bool{letdateVariable=Date()letdateFormatter=Date
我在UIViewController中有许多UIButton实例,我想在按下这些按钮中的任何一个时执行一些操作(一直向下)),我不知道这里的确切术语(也许是强制触摸?)。因此,当UIButton受到压力时,我想通过振动提供触觉反馈、更改按钮图像源以及做一些其他事情。然后当压力被释放时,我想将按钮图像源恢复到正常状态并做更多的事情。最简单的方法是什么?我应该像下面那样制作我自己的自定义UIButton还是有可以覆盖3D触摸“按下”和“释放”的方法。到目前为止,这是我的自定义UIButton代码。我是否应该通过反复试验来确定最大力应该是多少?另外,如何以最简单的方式更改每个按钮的图像源?i
通常,我想获得在我的SpriteKit游戏中用力按下(查看/弹出)图标时产生的触觉反馈。目前我正在通过以下方式使用3dtouchoverridefunctouchesMoved(_touches:Set,withevent:UIEvent?){fortouchintouches{iftouch.force>CGFloat(6.66){shootOut()}}}我希望在满足iftouch.force>CGFloat(6.66)条件时发生触觉反馈(类似于peek或pop)。如何做到这一点? 最佳答案 peek/pop触觉反馈可以在iOS
我有一个应用程序,允许用户在嵌入在UINavigationController中的UICollectionViewController中查看照片。当用户点击查看照片时,我会在全屏(不是默认的全屏)上以模态方式呈现一个新的ViewController。我现在想实现一个3DTouch提交(弹出)ViewController,使其显示与用户只需点击照片时完全一样。问题是,当弹出全屏照片时,iOS在幕后将这个ViewController推送到堆栈上——导航栏仍然可见,并且它添加了一个返回按钮以返回到上一个屏幕。我不想这样,我希望提交ViewController以模态方式呈现。我注意到如果我移除
我在iPhone6s上向UITableViewController添加了一些测试3DTouch功能。总的来说它工作正常,但我能够观察到一些2个问题,我不确定发生了什么以及如何以正常方式解决它。1)我的单元格是可选的,因此用户可以按下它或使用“3DTouch”。问题是,当我对UITableViewCell使用“Pop”和“Peek”时,它会被选中,我无法使用setSelected:或setHighlighted以正常方式取消选择:方法。我试图在不同的地方取消选择它,甚至在previewingContext:commitViewControllerinpresentViewControll
电话、提醒和map使用不同的3D-TouchPeek用户界面,允许一次选择一个操作。例如,用力按下提醒并一次选择“在某一天提醒我”,而不松开手指。它在视觉上也不同于使用UIViewControllerPreviewingAPI的标准3DTouch预览,因为它在左对齐文本旁边显示自定义图标。我找不到使用官方API执行此操作的方法。我是不是错过了什么,或者这确实是一个私有(private)API? 最佳答案 我在AppleDeveloperForums上问了我的问题也收到了Apple的回复:Currentlythereisnotpubl