您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了Android如何實(shí)現(xiàn)側(cè)滑菜單DrawerLayout,內(nèi)容簡而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
代碼實(shí)現(xiàn)過程:
1.導(dǎo)入框架build.gradle中
//materialDesign implementation 'com.google.android.material:material:1.0.0'
2.xml文件
主要的界面放在DrawerLayout 中,需要強(qiáng)調(diào)的是側(cè)滑菜單也就是下圖顯示的TextView一定要設(shè)置layout_gravity屬性,我是從左側(cè)滑動的,所以設(shè)置為start
<androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/drawer" android:fitsSystemWindows="true" tools:context=".MainActivity"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent"> <androidx.appcompat.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/colorPrimary" app:layout_constraintTop_toTopOf="parent" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> </androidx.constraintlayout.widget.ConstraintLayout> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="start" android:background="#FFFFFF" android:fitsSystemWindows="true" android:text="i am a textView" /> </androidx.drawerlayout.widget.DrawerLayout>
3.MainActivity
綁定xml文件中的toobar
protected void setupToobar() { toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); if (null != getSupportActionBar()) { getSupportActionBar().setDisplayHomeAsUpEnabled(true); } }
MainActivity 中將點(diǎn)擊之后觸發(fā)側(cè)邊滑動的圖片ic_menu動態(tài)放到toolbr中
@Override protected void setupViews() { setupToobar(); drawerLayout = findViewById(R.id.drawer); if (null != getSupportActionBar()) { getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_menu); } }
android.R.id.home 觸發(fā)左側(cè)滑動
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: drawerLayout.openDrawer(GravityCompat.START); break; case R.id.item_search: Toast.makeText(MainActivity.this, "搜索", Toast.LENGTH_SHORT).show(); } return true; }
到這就結(jié)束了。
4.后話
可以在主內(nèi)容區(qū)里面再放一個布局,里面放各個fragment,就可以實(shí)現(xiàn)每個頁面都有側(cè)滑菜單的效果。
側(cè)滑菜單里面的布局可以新建一個xml文件,然后include,可以看起來舒服點(diǎn)吧。
其他的效果后面慢慢來吧
以上就是關(guān)于Android如何實(shí)現(xiàn)側(cè)滑菜單DrawerLayout的內(nèi)容,如果你們有學(xué)習(xí)到知識或者技能,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。