注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

沉默蜂B4A安卓编程

国内资料最全的B4A资料库

 
 
 

日志

 
 

[推荐]滑动菜单类 (SlideMenu)(一)  

2014-04-11 20:24:44|  分类: 菜单控件 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
滑动菜单类 (SlideMenu)(一) - 沉默蜂QQ793136625 - 沉默蜂
例程运行效果图

下面是Main活动视图代码





#Region 代码说明

'版本:2014-04-12
'修改:沉默蜂(QQ793136625)
'博客:http://silentbees.blog.163.com

'2013-06-29 秋风增加从左(边缘)向右滑出菜单的动画效果。
'2014-04-12 沉默蜂对菜单的背景色进行了改进,另外还增加了不带图片的菜单命令功能。。

'来源  [Class] SlideMenu
'http://www.basic4ppc.com/android/forum/threads/class-SlideMenu.18810/

'ListView的使用请参考《使用ListView》
'http://silentbees.blog.163.com/blog/static/22878903120140274322264/

#End Region



#Region Module Attributes
#FullScreen: False
#IncludeTitle: False
#ApplicationLabel: SlideMenu
#VersionCode: 1
#VersionName: 
#SupportedOrientations: unspecified
#CanInstallToExternalStorage: False
#End Region

'Activity module
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
   Dim dx As Float
End Sub

Sub Globals
Dim sm As SlideMenu
Dim pnlPanel As Panel
End Sub

Sub Activity_Create(FirstTime As Boolean)

Activity.Color=Colors.White
pnlPanel .Initialize("")
Activity.AddView( pnlPanel ,0,30%y,100%x,70%y)
'菜单将在面板对象pnlPanel的顶部弹出,并且菜单宽度为180dip
'这个菜单的特点就是当确立菜单显示的顶部后,它将一直往下显示到屏幕底部
sm.Initialize(   pnlPanel, Me, "SlideMenu",0,0, 180dip)
' 如果想让菜单在Activity的顶部显示,可用如下代码
' sm.Initialize(  Activity, Me, "SlideMenu",0, 180dip)
   
'   
'   For  i = 0 To 10
'   
'   '增加菜单命令,AddItemAndBitmap命令的参数介绍如下:
' '第一个参数:菜单命令文本
' '第二个参数:设置是否显示菜单图片,如果不想显示,可使用Null
' '第三个参数:点击菜单命令后返回的文本
' sm.AddItemAndBitmap("菜单命令 #" & i , LoadBitmap(File.DirAssets, "bomb.png"),  i)
'
'   Next
'   

'   For  i = 11 To 20
'   
'   sm.AddItemAndBitmap("菜单命令 #" & i ,  Null, i)
'
'   Next   

sm.Initialize(   pnlPanel, Me, "SlideMenu",1,0, 180dip)
   For  i = 0 To 20
  sm.AddItem("菜单命令 #" & i ,   i)
   Next 

End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

'We capture the menu and back keys
Sub Activity_KeyPress (KeyCode As Int) As Boolean

'按回退时发果发现菜单显示着,就把它隐藏
If KeyCode = KeyCodes.KEYCODE_BACK AND sm.isVisible Then
sm.Hide
Return True
End If

'点击手机上菜单键显示此菜单
If KeyCode = KeyCodes.KEYCODE_MENU Then
If sm.isVisible Then sm.Hide Else sm.Show
Return True
End If
End Sub

'Show the slidemenu
Sub btnShow_Click
sm.Show
End Sub

'在菜单上点击菜单命令
Sub SlideMenu_Click(Item As Object)
ToastMessageShow("Item clicked: " & Item, False)
End Sub

Sub Activity_touch(action As Int,x As Float,y As Float)
'    Select action
' Case Activity.ACTION_MOVE
'   If dx<20 Then 
'      sm.Show
'   End If
' Case Activity.ACTION_DOWN
'     dx=x
' End Select
End Sub

  评论这张
 
阅读(308)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017