音乐播放器
1 初始化界面的时候注意的细节:
底部的view中按钮的约束一定要约束好,slider 按钮的滑头的颜色的可以通过取色得到,系统自带的按钮不用设置bounds,直接给image参照图片的大小设置,三个按钮的位置是对齐的。
专辑的名称在横屏的情况下是没有显示的,横竖屏适配的时候最重要的是注意约束!
控件是装在竖屏上,所以横屏上是没有的。所有切换到横屏上的时候要自己手动添加需要展示的控件。
《1》办法就是:选中需要添加到横屏上的按钮,在属性栏的最下面选择 install,+号 ,选择compact ,但是只是把约束搞搞来了,约束还没有啊!
先把背景的约束添加到上面去,再将底部的view设置好约束 (左0,右0,底部0),高度是46
发现所有的控件都看不到了,其实是位置不对,要调整一下(都把x,y 更改一下能够看到的正值,然后让这六个控件水平对齐,然后分别添加他们的约束即可)
误区: 竖屏中有一个遮罩:是一个view,导致横竖屏切换的时候显示不同的背景画面
毛玻璃效果:素材:图片名称: lock_lyric_mask
2 拖线: 注意 横竖屏不同,通用的属性和横竖屏的属性分别放在不同的定义的里面
3 添加毛玻璃的效果的两种方式:
<a> cocopod 安装masonry 1 cd 项目路径 2 pod init 创建podfile 3 open Podfile -a Xcode
在Podfile文件中添加 “ pod Mansory” 这句,4 pod install --no-repo-update
// 1 使用uinavbar 实现
UINavigationBar *navBar=[[UINavigationBar alloc]init];
navBar.barStyle=UIBarStyleBlack;
[self.BgView addSubview:navBar]; //这个主要添加到背景的图片才能显示毛玻璃效果
navigationbar 中的style 属性改成 black
//2 第二种实现的方式
// 毛玻璃的效果
UIBlurEffect*effect=[UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
UIVisualEffectView *effectView=[[UIVisualEffectView alloc]initWithEffect:effect];
[self.BgView addSubview:effectView];
[effectView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.BgView);
}];
4切歌曲功能的实现:
这种就是逻辑的实现,定义一个music实体,导用一个分类,NSObject+Model,根据字典名称转换成数组模型,定义一个泛型的模型数组。 私有的数组模型和 角标记录当前的选中的模型方便下一次和上一次的切换,切换临界值的判断。首次加载直接调用切歌的方法默认第一首。
5 注释:这里面的 单例中的currenttime 重写get,set 方法
一个类方法中怎么可以使用成员变量呢?(这种错误经常性的犯!!!警纪)
根据字符串的路径名获取url:[NSBundle mainBundle]URLForResource:fileName withExtension:nil];