真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

在Android項目中使用View實現一個側滑菜單-創(chuàng)新互聯

在Android項目中使用View實現一個側滑菜單?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

陸豐ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

一、概述

  在App中,經常會出現側滑菜單,側滑滑出View等效果,雖然說Android有很多第三方開源庫,但是實際上咱們可以自己也寫一個自定義的側滑View控件,其實不難,主要涉及到以下幾個要點:

1.對Android中Window類中的DecorView有所了解

2.對Scroller類實現平滑移動效果

3.自定義ViewGroup的實現

首先來看看效果圖吧:

在Android項目中使用View實現一個側滑菜單

在Android項目中使用View實現一個側滑菜單   在Android項目中使用View實現一個側滑菜單

  下面現在就來說說這里咱們實現側滑View的基本思路吧,這里我采用的是自定義一個繼承于RelativeLayout的控件叫做XCSlideView類吧。

首先從布局文件中inflater出來一個menuView,然后通過addView的方法,將該側滑View添加到自定義的控件View中怎么讓XCSlideView 這個側滑View 隱藏到屏幕之外呢?很簡單通過ScrollTo方法,移動一個屏幕寬度的距離即可,這里以左側滑出為例吧,只需要這樣 XCSlideView.this.scrollTo(mScreenWidth, 0);mScreenWidth是屏幕寬度。下面還要處理的就是底下的半透明黑色的蒙層效果,這個其實就是一個View,然后設置半透明效果。這個當然簡單了,關鍵是咱們讓他顯示在咱們的自定義側滑View的下面呢,這里咱們先給出DecorView的簡單分析,方便下面介紹添加半透明View蒙層下:

在Android項目中使用View實現一個側滑菜單

下面是對上面這張圖的解釋:

1、DecorView為整個Window界面的最頂層View。

2、DecorView只有一個子元素為LinearLayout。代表整個Window界面,包含通知欄,標題欄,內容顯示欄三塊區(qū)域。

3、LinearLayout里有兩個FrameLayout子元素。

  (20)為標題欄顯示界面。只有一個TextView顯示應用的名稱。也可以自定義標題欄,載入后的自定義標題欄View將加入FrameLayout中。

  (21)為內容欄顯示界面。就是setContentView()方法載入的布局界面,加入其中。

有了上面的DecorVIew知識背景,現在就來說說 怎么添加蒙層View和將自定義側滑View添加到Activity的DecorView中,首先把蒙層View添加到

(31)customView中去,然后將自定義側滑View添加到 (21)FrameLayout中去,至于為什么要這樣,是因為考慮到自定義側滑View不一定是寬度為屏幕寬度,所以才這么做,而且也方面處理有無標題欄,有無采用沉浸式狀態(tài)欄設計等情況。

二、自定義側滑View的實現

根據上面的概述,大家應該知道大概的思路了,下面我就給出自定義側滑View類的核心代碼:

1、自定義側滑View用到的變量:

//側滑方向-從哪側滑出
 public static enum Positon {
 LEFT, RIGHT
 }
 private Context mContext;
 private Activity mActivity;
 private Scroller mScroller = null;
 //側滑菜單布局View
 private View mMenuView;
 //底部蒙層View
 private View mMaskView;
 private int mMenuWidth = 0;
 //屏幕寬度
 private int mScreenWidth = 0;
 //是否在滑動中
 private boolean mIsMoving = false;
 //顯示登錄界面與否
 private boolean mShow = false;
 //滑動動畫時間
 private int mDuration = 600;
 //缺省側滑方向為左
 private Positon mPositon = Positon.LEFT;

當前題目:在Android項目中使用View實現一個側滑菜單-創(chuàng)新互聯
網頁鏈接:http://weahome.cn/article/ccpcgo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部