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];