国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > iOS > 正文

iOS實(shí)現(xiàn)微信搖一搖功能

2019-10-21 18:40:56
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

一、描述 

需要做一個(gè)界面,仿照微信搖一搖,獲取接口進(jìn)行簽到功能。 
首先明確以下幾點(diǎn): 

1、需要震動(dòng)。 
2、需要聲音。(準(zhǔn)備好mp3音效) 

二、這邊直接貼代碼

/ Created by 石雄偉 on 16/7/29.// Copyright © 2016年 石雄偉. All rights reserved.//#import "SignBoardViewController.h"#import <AVFoundation/AVFoundation.h>#import <AudioToolbox/AudioToolbox.h>#import <CoreAudio/CoreAudioTypes.h>@interface SignBoardViewController (){}@property (nonatomic,strong) AVAudioPlayer * audioPlayer;@end@implementation SignBoardViewController- (void)viewDidLoad {  [super viewDidLoad];  // Do any additional setup after loading the view.  //設(shè)置導(dǎo)航  [self makeNav];}#pragma mark 定制Nav- (void)makeNav{  [self.navigationItem setTitle:@"每日簽到"];//改寫title  //修改導(dǎo)航按鈕,并且修改響應(yīng)方法  self.leftButton.frame = CGRectMake(0, 0, 13, 20);  [self.leftButton setBackgroundImage:[UIImage imageNamed:@"NavBack"] forState:UIControlStateNormal];  self.leftButton.layer.cornerRadius = 0;  self.leftButton.layer.masksToBounds = NO;  self.leftButton.layer.borderColor = [UIColor clearColor].CGColor;  //添加點(diǎn)擊方法  [self.leftButton addTarget:self action:@selector(navLeftClick) forControlEvents:UIControlEventTouchUpInside];  //隱藏 右邊按鈕  self.rightButton.hidden= YES;}#pragma mark nav左邊導(dǎo)航按鈕方法重寫,返回按鈕- (void)navLeftClick{  [self dismissViewControllerAnimated:YES completion:^{    nil;  }];}#pragma mark -#pragma mark 點(diǎn)擊- (void)touchesBegan:(nonnull NSSet<UITouch *> *)touches withEvent:(nullable UIEvent *)event{  NSLog(@"點(diǎn)擊,觸摸方法等");  AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);}#pragma mark -#pragma mark 搖動(dòng)開始- (void)motionBegan:(UIEventSubtype)motion withEvent:(nullable UIEvent *)event{  NSLog(@"begin motion");}#pragma mark -#pragma mark 搖動(dòng)結(jié)束- (void)motionEnded:(UIEventSubtype)motion withEvent:(nullable UIEvent *)event{  NSLog(@"end motion");  if (motion ==UIEventSubtypeMotionShake )  {    //播放音效    SystemSoundID  soundID; // shake_sound_male.mp3    NSString *path = [[NSBundle mainBundle ] pathForResource:@"shake_sound_male" ofType:@"mp3"];    AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:path], &soundID);    AudioServicesPlaySystemSound (soundID);    //設(shè)置震動(dòng)    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);  }}#pragma mark -#pragma mark 搖動(dòng)取消- (void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event{}- (void)didReceiveMemoryWarning {  [super didReceiveMemoryWarning];  // Dispose of any resources that can be recreated.}/*#pragma mark - Navigation// In a storyboard-based application, you will often want to do a little preparation before navigation- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {  // Get the new view controller using [segue destinationViewController].  // Pass the selected object to the new view controller.}*/

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到IOS開發(fā)頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 太原市| 乾安县| 东安县| 乡城县| 敖汉旗| 长武县| 临沧市| 温州市| 绿春县| 雷山县| 鄂温| 安达市| 乐至县| 习水县| 雅安市| 靖边县| 高陵县| 马龙县| 浮梁县| 东港市| 米脂县| 青阳县| 开原市| 晴隆县| 淳安县| 鹤庆县| 启东市| 偃师市| 隆安县| 凤翔县| 合水县| 陈巴尔虎旗| 镇远县| 科尔| 西峡县| 松溪县| 泽库县| 周宁县| 中宁县| 黄山市| 麦盖提县|