Android開(kāi)源組件SlidingMenu側(cè)滑菜單使用介紹
現(xiàn)在很多android應(yīng)用都有側(cè)滑菜單,效果很不錯(cuò)。
GitHub上有SlidingMenu的開(kāi)源庫(kù),使用起來(lái)很方便。
SlidingMenu GitHub地址:https://github.com/jfeinstein10/SlidingMenu。GitHub上說(shuō),Sliding結(jié)合ActionBarSherlock使用功能可以更豐富,ActionBarSherlock GitHub地址:https://github.com/JakeWharton/ActionBarSherlock
附csdn下載地址:
SlidingMenu: http://download.csdn.net/detail/lanximu/7922377
ActionBarsherlock: http://download.csdn.net/detail/lanximu/7922383
下面,介紹下SlidingMenu的使用。
(1)從GitHub上download zip到本地,解壓縮,得到其中的一個(gè)文件夾,library。
(2)Eclipse import Existing Android Code Into Workspace。 點(diǎn)擊項(xiàng)目右鍵 properties->Android,可以看到,其 Is Library。
(3)在將使用SlidingMenu的項(xiàng)目上點(diǎn)擊右鍵 properties->Android,Library下將(2)導(dǎo)入的項(xiàng)目add進(jìn)去。
(4)為保證SlidingMenu庫(kù)應(yīng)用到項(xiàng)目中成功,必須保證項(xiàng)目使用的libs和SlidingMenu庫(kù)使用的libs版本一致,主要是指android-support-v4.jar。如果項(xiàng)目libs不存在或編譯不通過(guò),可以嘗試新建libs文件夾,并置入android-support-v4.jar。在libs上右鍵->Build Path->Use as Source。一般可以解決。
(5)第(4)步之后,便可以在項(xiàng)目中直接使用SlidingMenu。
Java代碼:
MainActivity:
package com.jj.testslidingmenu;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
public class MainActivity extends Activity {
SlidingMenu slidingMenu;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
slidingMenu = new SlidingMenu(this);
slidingMenu.setMode(SlidingMenu.LEFT);
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
slidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
slidingMenu.setMenu(R.layout.slidingmenu);
slidingMenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
}
@Override
public boolean onKeyDown(int key, KeyEvent event){
switch (key) {
case KeyEvent.KEYCODE_MENU:
slidingMenu.toggle(true);
break;
default:
break;
}
return false;
}
}
XMl布局代碼:
layout/slidingmenu.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#ff999999">
<com.jeremyfeinstein.slidingmenu.lib.SlidingMenu
android:id="@+id/slidingmenu"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text = "click me"/>
</com.jeremyfeinstein.slidingmenu.lib.SlidingMenu>
</LinearLayout>
對(duì)于SlidingMenu常用的一些屬性設(shè)置記錄如下:
menu.setMode(SlidingMenu.LEFT);//設(shè)置左滑菜單
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//設(shè)置滑動(dòng)的屏幕范圍,該設(shè)置為全屏區(qū)域都可以滑動(dòng)
menu.setShadowDrawable(R.drawable.shadow);//設(shè)置陰影圖片
menu.setShadowWidthRes(R.dimen.shadow_width);//設(shè)置陰影圖片的寬度
menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);//SlidingMenu劃出時(shí)主頁(yè)面顯示的剩余寬度
menu.setBehindWidth(400);//設(shè)置SlidingMenu菜單的寬度
menu.setFadeDegree(0.35f);//SlidingMenu滑動(dòng)時(shí)的漸變程度
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);//使SlidingMenu附加在Activity上
menu.setMenu(R.layout.menu_layout);//設(shè)置menu的布局文件
menu.toggle();//動(dòng)態(tài)判斷自動(dòng)關(guān)閉或開(kāi)啟SlidingMenu
menu.showMenu();//顯示SlidingMenu
menu.showContent();//顯示內(nèi)容
menu.setOnOpenListener(onOpenListener);//監(jiān)聽(tīng)slidingmenu打開(kāi)
menu.setOnOpenedListener(onOpenedlistener);監(jiān)聽(tīng)slidingmenu打開(kāi)后
menu.OnCloseListener(OnClosedListener);//監(jiān)聽(tīng)slidingmenu關(guān)閉時(shí)事件
menu.OnClosedListener(OnClosedListener);//監(jiān)聽(tīng)slidingmenu關(guān)閉后事件
左右都可以劃出SlidingMenu菜單只需要設(shè)置
menu.setMode(SlidingMenu.LEFT_RIGHT);屬性,然后設(shè)置右側(cè)菜單的布局文件
menu.setSecondaryMenu(R.layout.menu_fram2);//設(shè)置右側(cè)菜單
menu.setSecondaryShadowDrawable(R.drawable.shadowright);//右側(cè)菜單的陰影圖片
- Android實(shí)現(xiàn)原生側(cè)滑菜單的超簡(jiǎn)單方式
- Android滑動(dòng)優(yōu)化高仿QQ6.0側(cè)滑菜單(滑動(dòng)優(yōu)化)
- android RecyclerView側(cè)滑菜單,滑動(dòng)刪除,長(zhǎng)按拖拽,下拉刷新上拉加載
- Android使用自定義控件HorizontalScrollView打造史上最簡(jiǎn)單的側(cè)滑菜單
- Android使用DrawerLayout實(shí)現(xiàn)仿QQ雙向側(cè)滑菜單
- 代碼分析Android實(shí)現(xiàn)側(cè)滑菜單
- Android UI實(shí)現(xiàn)SlidingMenu側(cè)滑菜單效果
- Android_UI 仿QQ側(cè)滑菜單效果的實(shí)現(xiàn)
- Android側(cè)滑菜單控件DrawerLayout使用詳解
- Android自定義實(shí)現(xiàn)側(cè)滑菜單效果
相關(guān)文章
Android實(shí)現(xiàn)手機(jī)拍照功能
這篇文章主要介紹了Android實(shí)現(xiàn)手機(jī)拍照功能,感興趣的小伙伴們可以參考一下2015-12-12
Android編程Widget創(chuàng)建與使用方法簡(jiǎn)明教程
這篇文章主要介紹了Android編程Widget創(chuàng)建與使用方法,結(jié)合實(shí)例形式分析了Widget的功能、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-10-10
android自定義組件實(shí)現(xiàn)儀表計(jì)數(shù)盤
這篇文章主要為大家詳細(xì)介紹了android自定義組件實(shí)現(xiàn)儀表計(jì)數(shù)盤,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
Android Studio無(wú)法執(zhí)行Java類的main方法問(wèn)題及解決方法
這篇文章主要介紹了Android Studio無(wú)法執(zhí)行Java main方法的問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
Android利用SoundPool實(shí)現(xiàn)音樂(lè)池
這篇文章主要為大家詳細(xì)介紹了Android利用SoundPool實(shí)現(xiàn)音樂(lè)池,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
Android中TabLayout結(jié)合ViewPager實(shí)現(xiàn)頁(yè)面切換效果
這篇文章主要介紹了Android中TabLayout結(jié)合ViewPager實(shí)現(xiàn)頁(yè)面切換效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
RecyclerView實(shí)現(xiàn)流式標(biāo)簽單選多選功能
RecyclerView是Android一個(gè)更強(qiáng)大的控件,其不僅可以實(shí)現(xiàn)和ListView同樣的效果,還有優(yōu)化了ListView中的各種不足。這篇文章主要介紹了RecyclerView實(shí)現(xiàn)的流式標(biāo)簽單選多選功能,需要的朋友可以參考下2019-11-11
Android使用Gradle依賴配置compile、implementation與api的區(qū)別介紹
這篇文章主要給大家介紹了關(guān)于Android使用Gradle依賴配置compile、implementation與api區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧2018-09-09

