iOS 添加震动结果

锦通  金牌会员 | 2024-7-24 07:11:31 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 804|帖子 804|积分 2412

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 立即注册

本版积分规则

锦通

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表