天天看點

安卓側滑欄劃過後留下黑色背景的bug

在側滑菜單的項目編輯中,遇到了一個神奇的bug,别人家的側滑菜單好好的而我我的側滑菜單menu界面劃過後卻暴露出許多bug;

1,首先是menu菜單界面滑動與content界面滑動不同步的問題,具體描述為每當你滑動menu菜單時,本來content界面應該被menu菜單“擠”到螢幕外,但事實是menu菜單隻是将content界面“覆寫”;

2,當左右滑動menu菜單後,發現menu菜單雖然正藏隐藏在螢幕外,但是在他滑動過之後的區域,留下了黑的的背景帶,黑色背景帶的大小恰巧等于menu菜單界面的大小。

3,運作app時一系列的報錯,錯誤資訊主要集中在LayoutParams,包括menu,content菜單的聲明。layout的cast類型轉化等;

究其真正原因,是因為我們的xml布局檔案的布局問題,首先, LayoutParams的預設屬性是linearlayout,因為隻有linear的預設屬性有orientation的設定。orientation不僅要設定,而且要根據滑動側邊欄的滑動方向設定,比如你要進行左右滑動,那麼xml檔案中承裝menu的layout和content的layout的orientation屬性一定要設定為水準horizontal;其次,menu和content控件的聲明一定要用lineatlayout。

意識到這兩點,此坑可平。