Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android學習指南之四十二:用戶界面View之SlidingDrawer

Android學習指南之四十二:用戶界面View之SlidingDrawer

編輯:關於android開發

       研究Launcher源碼時,發現並學習了SlidingDrawer類,即通常所說的“抽屜”類。

       實際上SlidingDrawer的使用比較簡單,需要包括handle和content。handle 就是當你點擊它的時候,content要麼抽抽屜要麼關抽屜。別的不多說了,具體步驟如下:

       1、新建Android 工程,命名為SlidingDrawer。

       2、准備素材,在這裡我的圖標是用Launcher2 裡面的圖標,放在drawable-hdpi 文件夾目錄結構如下圖:

Android學習指南之四十二:用戶界面View之SlidingDrawer

       3、設置main.xml 布局,代碼如下:

XML/HTML代碼
  1.   
  2. <DIV class="bct fc05 fc11 nbw-blog ztag js-fs2" __1346152994956__="ev_1952644776"><SPAN><?xml version="1.0" encoding="utf-8"?>    
  3. <LinearLayout xmlns:android="<A href="http://schemas.android.com/apk/res/android" target=_blank><FONT color=#0066cc>http://schemas.android.com/apk/res/android</FONT></A>"    
  4. android<IMG border=0 alt="" src="http://dev.10086.cn/cmdn/bbs/images/smilies/default/shocked.gif" smilieid="6">rientation="vertical"    
  5. android:layout_width="fill_parent"    
  6. android:layout_height="fill_parent"    
  7. android:background="#808080"    
  8. >    
  9. <SlidingDrawer    
  10. android:id="@+id/slidingdrawer"    
  11. android:layout_width="fill_parent"    
  12. android:layout_height="fill_parent"    
  13. android<IMG border=0 alt="" src="http://dev.10086.cn/cmdn/bbs/images/smilies/default/shocked.gif" smilieid="6">rientation="vertical"    
  14. android:handle="@+id/handle"    
  15. android:content="@+id/content">    
  16. <Button    
  17. android:id="@+id/handle"    
  18. android:layout_width="88dip"    
  19. android:layout_height="44dip"    
  20. android:background="@drawable/handle"    
  21. />    
  22. <LinearLayout    
  23. android:id="@+id/content"    
  24. android:layout_width="fill_parent"    
  25. android:layout_height="fill_parent"    
  26. android:background="#00ff00">    
  27. <Button    
  28. android:id="@+id/button"    
  29. android:layout_width="wrap_content"    
  30. android:layout_height="wrap_content"    
  31. android:text="Button"    
  32. />    
  33. <EditText    
  34. android:id="@+id/editText"    
  35. android:layout_width="fill_parent"    
  36. android:layout_height="wrap_content"    
  37. />    
  38. </LinearLayout>    
  39. </SlidingDrawer>    
  40. </LinearLayout>    
  41. <?xml version="1.0" encoding="utf-8"?>  
  42. <LinearLayout xmlns:android="<A href="http://schemas.android.com/apk/res/android" target=_blank><FONT color=#0066cc>http://schemas.android.com/apk/res/android</FONT></A>"   
  43. android<IMG border=0 alt="" src="http://dev.10086.cn/cmdn/bbs/images/smilies/default/shocked.gif" smilieid="6">rientation="vertical"  
  44. android:layout_width="fill_parent"  
  45. android:layout_height="fill_parent"  
  46. android:background="#808080"  
  47. >  
  48. <SlidingDrawer  
  49. android:id="@+id/slidingdrawer"  
  50. android:layout_width="fill_parent"  
  51. android:layout_height="fill_parent"  
  52. android<IMG border=0 alt="" src="http://dev.10086.cn/cmdn/bbs/images/smilies/default/shocked.gif" smilieid="6">rientation="vertical"  
  53. android:handle="@+id/handle"  
  54. android:content="@+id/content">  
  55. <Button  
  56. android:id="@+id/handle"  
  57. android:layout_width="88dip"  
  58. android:layout_height="44dip"  
  59. android:background="@drawable/handle"  
  60. />  
  61. <LinearLayout  
  62. android:id="@+id/content"  
  63. android:layout_width="fill_parent"  
  64. android:layout_height="fill_parent"  
  65. android:background="#00ff00">  
  66. <Button  
  67. android:id="@+id/button"  
  68. android:layout_width="wrap_content"  
  69. android:layout_height="wrap_content"  
  70. android:text="Button"  
  71. />  
  72. <EditText  
  73. android:id="@+id/editText"  
  74. android:layout_width="fill_parent"  
  75. android:layout_height="wrap_content"  
  76. />  
  77. </LinearLayout>  
  78. </SlidingDrawer>  
  79. </LinearLayout>  
  80. </SPAN>  
  81. </DIV>  

       4、設置handle 圖標的樣式,在drawable 裡添加handle.xml,代碼如下:

XML/HTML代碼
  1. <?xml version="1.0" encoding="utf-8"?>    
  2. <selector xmlns:android="<A href="http://schemas.android.com/apk/res/android" target=_blank><FONT color=#0066cc>http://schemas.android.com/apk/res/android</FONT></A>">    
  3. <item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/handle_normal" />    
  4. <item android:state_pressed="true" android:drawable="@drawable/handle_pressed" />    
  5. <item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/handle_focused" />    
  6. <item android:state_enabled="true" android:drawable="@drawable/handle_normal" />    
  7. <item android:state_focused="true" android:drawable="@drawable/handle_focused" />    
  8. </selector>    
  9. <?xml version="1.0" encoding="utf-8"?>  
  10. <selector xmlns:android="<A href="http://schemas.android.com/apk/res/android" target=_blank><FONT color=#0066cc>http://schemas.android.com/apk/res/android</FONT></A>">  
  11. <item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/handle_normal" />  
  12. <item android:state_pressed="true" android:drawable="@drawable/handle_pressed" />  
  13. <item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/handle_focused" />  
  14. <item android:state_enabled="true" android:drawable="@drawable/handle_normal" />  
  15. <item android:state_focused="true" android:drawable="@drawable/handle_focused" />  
  16. </selector>  

       5、運行之。將會得到如下效果:

Android學習指南之四十二:用戶界面View之SlidingDrawer

Android學習指南之四十二:用戶界面View之SlidingDrawer

       本文所講內容較為簡單,若想深入研究SlidingDrawer抽屜,可以查看Launcher源碼。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved