1. 程式人生 > >安卓框架——SlidingMenu使用技巧

安卓框架——SlidingMenu使用技巧

SlidingMenu的一些常用屬性

原文轉載http://blog.csdn.net/zwl5670/article/details/48274109
  1. //設定側滑選單的位置,可選值LEFT , RIGHT ,LEFT_RIGHT(兩邊都有選單時設定)
  2. menu.setMode(SlidingMenu.LEFT_RIGHT);  
  3. //設定觸控式螢幕幕的模式,可選只MARGIN ,CONTENT 
  4.        menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);  
  5. //根據dimension資原始檔的ID來設定陰影的寬度
  6.        menu.setShadowWidthRes(R.dimen.shadow_width);  
  7. //根據資原始檔ID來設定滑動選單的陰影效果
  8.        menu.setShadowDrawable(R.drawable.shadow);  
  9. //這兩個都是設定滑動選單檢視的寬度,二選一
  10.     //設定SlidingMenu離螢幕的偏移量
  11.        menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);  
  12.        //設定寬度
  13.        menu.setBehindWidth()  
  14. // 設定漸入漸出效果的值
  15.        menu.setFadeDegree(0.35f);  
  16. //設定SlidingMenu與下方檢視的移動的速度比,當為1時同時移動,取值0-1
  17.        menu.setBehindScrollScale(1.0f);  
  18. //設定二級選單的陰影效果
  19.        menu.setSecondaryShadowDrawable(R.drawable.shadow);  
  20. //設定右邊(二級)側滑選單
  21.        menu.setSecondaryMenu(R.layout.right_menu_frame);  
  22. //為側滑選單設定佈局
  23.        menu.setMenu(R.layout.leftmenu);  
  24. //把滑動選單新增進所有的Activity中,可選值SLIDING_CONTENT, SLIDING_WINDOW
  25.        menu.attachToActivity(this
    ,SlidingMenu.SLIDING_CONTENT);  


1、在Activity中通過SlidingMenu構造方法,直接設定側滑選單

  1. publicclass MainActivity extends Activity{   
  2.     @Override
  3.    protectedvoid onCreate(BundlesavedInstanceState) {  
  4.         super.onCreate(savedInstanceState);  
  5.            setContentView(R.layout.activity_main);    
  6.             SlidingMenu menu = new SlidingMenu(this);//初始化滑動選單
  7.         menu.setMode(SlidingMenu.LEFT);//設定觸控式螢幕幕的模式
  8.         menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);  
  9.         menu.setShadowWidthRes(R.dimen.shadow_width);//設定陰影的寬度
  10.         menu.setShadowDrawable(R.drawable.shadow);//設定滑動選單的陰影效果
  11.         // 設定滑動選單檢視的寬度
  12.         menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);  
  13.         // 設定漸入漸出效果的值
  14.         menu.setFadeDegree(0.35f);  
  15.         /** 
  16.          *SLIDING_WINDOW will include the Title/ActionBar in the content 
  17.          *section of the SlidingMenu, while SLIDING_CONTENT does not. 
  18.          */
  19.         // 把滑動選單新增進所有的Activity中 
  20.         menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);  
  21.         // 為側滑選單設定佈局  
  22.       menu.setMenu(R.layout.leftmenu);  
  23.     }    
  24. }    


2、通過把Activity繼承SlidingActivity 

a、繼承SlidingActivity
b、然後在onCreate中setBehindContentView(R.layout.leftmenu); 設定側滑選單的佈局
c、通過getSlidingMenu()得到SlidingMenu物件,然後設定樣式  
  1. publicclass MainActivity extends SlidingActivity  {    
  2.     @Override
  3.     publicvoid onCreate(Bundle savedInstanceState) {    
  4.         super.onCreate(savedInstanceState);    
  5.         setContentView(R.layout.activity_main);    
  6.         setBehindContentView(R.layout.leftmenu);    
  7.         // configure the SlidingMenu  
  8.         SlidingMenu menu = getSlidingMenu();    
  9.         menu.setMode(SlidingMenu.LEFT);    
  10.         // 設定觸控式螢幕幕的模式  
  11.         menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);    
  12.         menu.setShadowWidthRes(R.dimen.shadow_width);    
  13.         menu.setShadowDrawable(R.drawable.shadow);    
  14.         // 設定滑動選單檢視的寬度  
  15.         menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);    
  16.         // 設定漸入漸出效果的值  
  17.         menu.setFadeDegree(0.35f);    
  18.         /**  
  19.          * SLIDING_WINDOW will include the Title/ActionBar in the content  
  20.          * section of the SlidingMenu, while SLIDING_CONTENT does not.  
  21.          */
  22.         // menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);  
  23.         // menu.setMenu(R.layout.leftmenu);  
  24.     }    
  25. }    


3、將SlidingMenu當作普通控制元件

可以把SlidingMenu作為普通的view,然後在佈局中宣告。
  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools"
  3.     android:id="@+id/id_main_ly"
  4.     android:layout_width="match_parent"
  5.     android:layout_height="match_parent" >    
  6.     <LinearLayout    
  7.         android:layout_width="wrap_content"
  8.         android:layout_height="wrap_content"
  9.         android:layout_marginLeft="30dp"
  10.         android:layout_marginTop="30dp" >    
  11.         <com.jeremyfeinstein.slidingmenu.lib.SlidingMenu    
  12.             xmlns:sliding="http://schemas.android.com/apk/res-auto"
  13.             android:id="@+id/slidingmenulayout"
  14.             android:layout_width="120dp"
  15.             android:layout_height="170dp"
  16.             android:background="#ffffffff"
  17.             sliding:behindOffset="0dp"
  18.             sliding:behindScrollScale="1"
  19.             sliding:fadeDegree="0.3"
  20.             sliding:fadeEnabled="true"
  21.             sliding:touchModeAbove="fullscreen"
  22.             sliding:viewAbove="@layout/pic" />    
  23.     </LinearLayout>    
  24. </RelativeLayout>    


pic佈局:

  1. <?xml version="1.0" encoding="utf-8"?>    
  2. <ImageView xmlns:android="http://schemas.android.com/apk/res/android"    
  3.     android:layout_width="120dp"    
  4.     android:layout_height="170dp"    
  5.     android:src="@drawable/zhy" />    


MainActivity

  1. package com.zhy.zhy_slidemenu_demo03;    
  2. import android.app.Activity;    
  3. import android.os.Bundle;    
  4. import android.view.View;    
  5. import android.view.View.OnClickListener;    
  6. import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;    
  7. 相關推薦

    框架——SlidingMenu使用技巧

    SlidingMenu的一些常用屬性原文轉載http://blog.csdn.net/zwl5670/article/details/48274109//設定側滑選單的位置,可選值LEFT , RIGHT ,LEFT_RIGHT(兩邊都有選單時設定)menu.setMode(

    框架

    depend .net tom facebook run iss 開源 join 多線程 韓夢飛沙 韓亞飛 [email protected]/* */ yue31313 han_meng_fei_sha 安卓 框架 ======== andro

    框架的目錄說明

    組件 borde ctas sta sqli fig fix com dap 1、com.公司名.項目名.功能名 2、 com.公司名.項目名.base adapt 基礎ad

    框架

    Volley 谷歌官方的非同步請求庫,支援OKHttp 不支援post大資料,不適合上傳檔案。適合資料小比較頻繁的網路請求。 Xutils 註解模組,網路模組,圖片載入模組,資料庫模組 Picasso 圖形快取庫,可以實現圖片下載和快取功能 PullToRefresh&nbs

    [使用指南] 四個超實用手機使用技巧

    一、Android手機備份重要資料 無論刷機還是恢復出廠設定等操作都會造成手機資料的全部丟失,在操作前一定要備份手機重要資料。 備份聯絡人的方法: 聯絡人—選單—管理聯絡人—匯入/匯出聯絡人—匯出到手機儲存(匯出到儲存卡) 備份簡訊的方法: 資訊—選單—備份/還原簡

    DELPHI XE7 手機框架 演示功能

    XE7 安卓手機開發框架 1、主選單與主介面的切換 2、StyleBook的設計 3、介面佈局 4、顯示資料介面框架 5、編輯介面框架,包括輸入框輸入的時候鍵盤問題 6、WSDL三層結構伺服器訪問介面,實現資料同步伺服器 7、DataSet轉JSON,JSON轉Data

    開發小技巧--TextView 設定的文字過長,顯示三個點或者滾動形式顯示

    開發經常用textview,有時候文字過長就跑到下一行或者寬度設為包裹內容時會擠在一起,這樣看非常不美觀,ios的文字控制元件會自適應顯示不下時後面留三個點,那安卓的可不可以,當然可以效果 如圖

    裝逼技巧:QQ空間變iPhone8客戶端

    有時候看到別人發的QQ空間動態,手機型號顯示的都是“高大上”的型號,超羨慕有木有? 其實,對方可能用了“障眼法”! 今天小編就教大家這個裝逼小技能。 首先,確保你的安卓手機已經Root ,

    框架,分析解決專案中出現的anr

    07-16 15:31:47.551 E/ActivityManager( 1775): Reason: Input dispatching timed out (Waiting because the focused window's input ch

    框架,談談出現tombstone時addrline的使用

    backtrace: #00 pc 0003a428 /system/lib/libc.so (tgkill+12) #01 pc 000181e3 /system/lib/libc.so (pthread_kill+66) #02 pc 00018deb

    框架,分析專案中surfaceFlinger出現的bug ---queueBuffer: BufferQueue has been abandoned

    播放視訊切換頁面後返回發現surfaceview黑屏了,錯誤日誌如下 E/BufferQueueProducer: queueBuffer: BufferQueue has been abandoned 看下日誌來源 //BufferQueueProduce

    手機文件丟失恢復技巧大匯總 蘋果數據丟失都可恢復

    手機數據丟失恢復 文件恢復軟件 一、手機文件刪除了能恢復嗎不小心刪除了手機上的文件,還能不能重新恢復呢?如果刪除的是備份過的文件,那我們理所當然能通過備份文件來恢復。但是,如果是沒有備份的文件呢?其實也是可以恢復的,只要你停止對手機的頻繁操作。二、數據恢復的原理恢復手機文件的方法有千千萬,但是總結起來

    網絡 框架 視頻

    targe == andro 開發 click url www. data nth 韓夢飛沙 韓亞飛 [email protected] yue31313 han_meng_fei_sha 安卓 網絡 框架 視頻 ========= 《老羅Android開

    log日誌框架

    intent targe public exceptio eba als gad imp prior ◆elvishew/xLog 框架特性介紹 Global config(tag, formatters...) or log-based config Support

    移動端和 IOS 開發框架 Framework7 布局

    plus size ont open active image style ner 彈出 對應的各種效果,Framework7 裏面實現的方式比較多,這裏我就只寫我用的一種,樣式有的自己修改了的,想看官方詳細的參見 http://framework7.cn 一、手風琴布局A

    自動化測試:Robotium(二)page object 模式完善測試框架

    near pre image 控件 自動 coo IV warn activit 1、目前比較流行的設計模式就是page object,page object就是把頁面作為對象,在使用中傳遞頁面對象,來使用頁面對象中相應的成員或者方法,能更好的提現java的面向對象和封裝特

    專案實戰之強大的網路請求框架okGo使用詳解(六):擴充套件專案okServer,更強大的下載上傳功能,支援斷點和多工管理

    OkGo與OkDownload的區別就是,OkGo只是簡單的做一個下載功能,不具備斷點下載,暫停等操作,但是這在很多時候已經能滿足需要了。 而有些app需要有一個下載列表的功能,就像迅雷下載一樣,每個下載任務可以暫停,可以繼續,可以重新下載,可以有下載優先順序,這時候OkDownload就有

    專案實戰之強大的網路請求框架okGo使用詳解(五):擴充套件專案okRx,完美結合RxJava

    前言 在第一篇講解okGo框架新增依賴支援時,還記得我們額外新增的兩個依賴嗎,一個okRx和一個okServer,這兩個均是基於okGo框架的擴充套件專案,其中okRx可以使請求結合RxJava一起使用,而okServer則提供了強大的下載上傳功能,如斷點支援,多工管理等,本篇我們主要講

    專案實戰之強大的網路請求框架okGo使用詳解(四):Cookie的管理

    Cookie概念相關 具體來說cookie機制採用的是在客戶端保持狀態的方案,而session機制採用的是在伺服器端保持狀態的方案。同時我們也看到,由於採用伺服器端保持狀態的方案在客戶端也需要儲存一個標識,所以session機制是需要藉助於cookie機制來達到儲存標識的目的,所謂ses

    專案實戰之強大的網路請求框架okGo使用詳解(三):快取的使用

    相關實體類必須實現序列化介面 使用快取前,必須讓涉及到快取javaBean物件實現Serializable介面,否者會報NotSerializableException。因為快取的原理是將物件序列化後直接寫入資料庫中,如果不實現Serializable介面,會導致物件無法序列化,進而無法