iOS 添加震动结果

锦通  论坛元老 | 2024-7-24 07:11:31 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1581|帖子 1581|积分 4743

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1. AudioServicesPlaySystemSound

较早的系统版本,我们会利用AudioTool.framework。
  1. #import <AudioToolbox/AudioToolbox.h>
复制代码
一样平常震动
  1. AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
复制代码
平常短震(类似3D Touch的 Peek 反馈 )
  1. AudioServicesPlaySystemSound(1519);
复制代码
平常短震 (类似3D Touch Pop 反馈)
  1. AudioServicesPlaySystemSound(1520);
复制代码
连续三次短震
  1. AudioServicesPlaySystemSound(1521);
复制代码
2. UIImpactFeedbackGenerator

iOS 10之后提供了UIImpactFeedbackGenerator
  1. @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
  2. - (instancetype)initWithStyle:(UIImpactFeedbackStyle)style;
  3. // 调用后开始震动
  4. - (void)impactOccurred;
  5. // 调用后开始震动,强度从0~1
  6. - (void)impactOccurredWithIntensity:(CGFloat)intensity API_AVAILABLE(ios(13.0));
  7. @end
复制代码
UIImpactFeedbackStyle定义了震动的等级
  1. typedef NS_ENUM(NSInteger, UIImpactFeedbackStyle) {
  2.     UIImpactFeedbackStyleLight,
  3.     UIImpactFeedbackStyleMedium,
  4.     UIImpactFeedbackStyleHeavy,
  5.     UIImpactFeedbackStyleSoft     API_AVAILABLE(ios(13.0)),
  6.     UIImpactFeedbackStyleRigid    API_AVAILABLE(ios(13.0))
  7. };
复制代码
UIImpactFeedbackGenerator利用
  1. UIImpactFeedbackGenerator *generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleLight];
  2. [generator prepare];
  3. [generator impactOccurred];
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

锦通

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表