Android 實戰(zhàn)技巧-狀態(tài)欄漸變

原文 http://blog.csdn.net/snailbaby_soko/article/details/77863995

狀態(tài)欄漸變

先上圖看效果

點分期

最近公司項目做了這個效果碴犬,有時間整理下分享給大家肝断,為大家提供些思路
目前很多 app 都會有這個效果构回,狀態(tài)欄隨著可滾動的控件滑動的時候漸變陈惰。

實現(xiàn)的辦法更是各有千秋,可以

  • 用 CoordinatorLayout 自定義下 behavior
  • 用 ScrollView 監(jiān)聽滑動
  • 用 RecyclerView 監(jiān)聽滑動
  • 用別人封裝的庫

其中的取舍就要結合自己的項目和實際情況了禀挫。
但是為了實現(xiàn)功能的低侵入性旬陡,我們往往不建議直接引用封裝的庫,
因為項目的需求不一樣语婴,作者可能考慮的范圍并沒有切合自己描孟,出了bug
就很難調試和解決了。


實現(xiàn)思路

View.setAlpha(x);

整個功能需求就為了這個方法展開了砰左。很簡單吧匿醒,那么怎么獲取到漸變的 x

漸變的 x

 RecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);
        }
    });

看到這里,相信大家都知道了缠导,就是利用滑動時的 dy廉羔。
但是這里的 dy 打印出來可能會很懵逼,下滑的時候它的值大概是這樣的

dy --> 7
dy --> 12
dy --> 19
dy --> 12
dy --> 13
dy --> 13
dy --> 11
dy --> 9
dy --> 12
dy --> 7
dy --> 3
dy --> 1

上滑就為負數(shù)僻造,正負代表了方向就很好理解了憋他。
但這是什么鬼...它漸變沒有規(guī)律啊

按我的理解,其實它代表的就是此次滑動 加速度 ...
為什么這樣理解呢髓削,因為這個值的變化最后總是趨近于0竹挡,而且開始是隨著你滾動的速度的大小
而決定起始速度的。就好比你用多大的力氣推一個輪胎立膛,不管它會滾多遠多久此迅,但最后都會停下來一樣。

但是我們要知道輪胎滾了多遠旧巾,在代碼的世界里就沒必要考慮太多因素了,就只需要累計一下這個 dy 就
足夠了忍些,因為它下滑就為正上滑為負鲁猩,但是它們走過的路最終都可抵消。

整合

1.既然 dy 能產(chǎn)生漸變的 x
2.而且 x 能讓View產(chǎn)生漸變

這里就寫了這么一個布局罢坝,看層級估計一眼看懂了吧廓握,那個 ptrFrameLayout 是一個刷新的庫搅窿,這里使用
看看會不會導致沖突什么的,以便之后大家可以參考隙券,直接替換成自己使用的就好男应,親測可正常使用

布局截圖

箭頭指著的 View 就是我們漸變的豬腳了。
在監(jiān)聽里面這么處理一下 dy

實現(xiàn)后的效果圖娱仔。有了這個漸變的 x 大家還可以做更多的拓展

最終效果

Github Demo 點這里询枚。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末立磁,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌含衔,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拒贱,死亡現(xiàn)場離奇詭異瘾境,居然都是意外死亡,警方通過查閱死者的電腦和手機陪每,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門影晓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人檩禾,你說我怎么就攤上這事挂签。” “怎么了锌订?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵竹握,是天一觀的道長。 經(jīng)常有香客問我辆飘,道長啦辐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任蜈项,我火速辦了婚禮芹关,結果婚禮上,老公的妹妹穿的比我還像新娘紧卒。我一直安慰自己侥衬,他們只是感情好,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布跑芳。 她就那樣靜靜地躺著轴总,像睡著了一般。 火紅的嫁衣襯著肌膚如雪博个。 梳的紋絲不亂的頭發(fā)上怀樟,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天,我揣著相機與錄音盆佣,去河邊找鬼往堡。 笑死械荷,一個胖子當著我的面吹牛,可吹牛的內容都是我干的虑灰。 我是一名探鬼主播吨瞎,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼穆咐!你這毒婦竟也來了颤诀?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤庸娱,失蹤者是張志新(化名)和其女友劉穎着绊,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體熟尉,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡归露,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了斤儿。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片剧包。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖往果,靈堂內的尸體忽然破棺而出疆液,到底是詐尸還是另有隱情,我是刑警寧澤陕贮,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布堕油,位于F島的核電站,受9級特大地震影響肮之,放射性物質發(fā)生泄漏掉缺。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一戈擒、第九天 我趴在偏房一處隱蔽的房頂上張望眶明。 院中可真熱鬧,春花似錦筐高、人聲如沸搜囱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蜀肘。三九已至,卻和暖如春稽屏,著一層夾襖步出監(jiān)牢的瞬間幌缝,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工诫欠, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留涵卵,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓荒叼,卻偏偏與公主長得像轿偎,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子被廓,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內容