ios11--播放音效
2024-08-31 00:00:41
//
// ViewController.m
// 10-iOS中播放音效
//
// Created by xiaomage on 15/12/26.
// Copyright © 2015年 小码哥. All rights reserved.
// #import "ViewController.h"
#import <AVFoundation/AVFoundation.h> @interface ViewController ()
/**
* 背景图片
*/
@property (weak, nonatomic) IBOutlet UIImageView *bgImageView; /** 播放器 */
@property (nonatomic, strong) AVPlayer *player; @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad]; // 1.加毛玻璃
UIToolbar *toolbar = [[UIToolbar alloc] init]; // 2. 设置frame
toolbar.frame = self.bgImageView.bounds; // 3. 设置样式和透明度
toolbar.barStyle = UIBarStyleBlack;
toolbar.alpha = 0.98; // 4.加到背景图片上
[self.bgImageView addSubview:toolbar]; // 5.创建播放器
/*
NSString *path = [[NSBundle mainBundle] pathForResource:@"mySong1.mp3" ofType:nil];
NSURL *url = [NSURL fileURLWithPath:path];
*/
// 资源的URL地址
NSURL *url = [[NSBundle mainBundle] URLForResource:@"mySong1.mp3" withExtension:nil];
// 创建播放器曲目
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:url];
// 创建播放器
self.player = [[AVPlayer alloc] initWithPlayerItem:playerItem]; } /**
* 播放/暂停
*
* @param button 按钮
*/
- (IBAction)playOrPause:(UIButton *)button {
switch (button.tag) {
case :
[self.player play]; // 播放
break;
case :
[self.player pause]; // 暂停
break;
default:
break;
}
} /**
* 切换歌曲
*
* @param button 按钮
*/
- (IBAction)changeMusic:(UIButton *)button {
// 歌曲的名称
NSString *musicName = nil;
switch (button.tag) {
case :// 上一首
musicName = @"mySong2.mp3";
break;
case :// 下一首
musicName = @"mySong3.mp3";
break;
default:
break;
} NSURL *url = [[NSBundle mainBundle] URLForResource:musicName withExtension:nil];
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:url];
[self.player replaceCurrentItemWithPlayerItem:playerItem]; // 播放
[self.player play];
} @end
最新文章
- 设计模式之合成/聚合利用原则(CARP)
- CTSC2016&;&;APIO2016滚粗记&;&;酱油记&;&;游记<;del>;(持续更新)<;/del>;
- If WCF Service side and Client side config is different?!
- HDU 3078 (LCA+树链第K大)
- 识别有效的IP地址和掩码并进行分类统
- struct termios结构体【转】
- Android计算时间差
- cocos2dx--cocos2dx3.1.1执行报无法解析的外部符号
- BYS推荐MS前端PhoneCall面试问题整理-1
- Unity 大中华区核心业务
- [Swift]LeetCode340.最多有K个不同字符的最长子串 $ Longest Substring with At Most K Distinct Characters
- Spring-boot 编写hello world
- 20165337实验三——敏捷开发与XP实践
- C#Workbooks 对象的 Open 方法参数说明
- Object.assign()解释整理
- 71A
- spring得到所有Action类
- 第5月第13天 node cnpm安装 babel
- 在fedora 18中将普通用户设置为sudo权限
- 20145328 《Java程序设计》第3周学习总结