menu

package
v0.0.0-...-f5adc6c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 26, 2014 License: Apache-2.0 Imports: 0 Imported by: 0

README

创建菜单的示例

	// 典型的创建菜单的过程
	
	var subButtons = make([]Button, 2)
	subButtons[0].InitToViewButton("搜索", "http://www.soso.com/")
	subButtons[1].InitToClickButton("赞一下我们", "V1001_GOOD")

	var mn Menu
	mn.Buttons = make([]Button, 3)
	mn.Buttons[0].InitToClickButton("今日歌曲", "V1001_TODAY_MUSIC")
	mn.Buttons[1].InitToViewButton("视频", "http://v.qq.com/")
	mn.Buttons[2].InitToSubMenuButton("菜单", subButtons)

	// =========================================================================
	
	var subButtons0 = make([]Button, 2)
	subButtons0[0].InitToScanCodeWaitMsgButton("扫码带提示", "rselfmenu_0_0")
	subButtons0[1].InitToScanCodePushButton("扫码推事件", "rselfmenu_0_1")

	var subButtons1 = make([]Button, 3)
	subButtons1[0].InitToPicSysPhotoButton("系统拍照发图", "rselfmenu_1_0")
	subButtons1[1].InitToPicPhotoOrAlbumButton("拍照或者相册发图", "rselfmenu_1_1")
	subButtons1[2].InitToPicWeixinButton("微信相册发图", "rselfmenu_1_2")

	var mn1 Menu
	mn1.Buttons = make([]Button, 3)
	mn1.Buttons[0].InitToSubMenuButton("扫码", subButtons0)
	mn1.Buttons[1].InitToSubMenuButton("发图", subButtons1)
	mn1.Buttons[2].InitToLocationSelectButton("发送位置", "rselfmenu_2_0")

Documentation

Overview

定义自定义菜单相关的数据结构.

Index

Constants

View Source
const (
	MenuButtonCountLimit    = 3 // 一级菜单最多包含 3 个按钮
	SubMenuButtonCountLimit = 5 // 二级菜单最多包含 5 个按钮
)
View Source
const (
	MenuButtonNameLenLimit    = 16 // 菜单标题不超过16个字节
	SubMenuButtonNameLenLimit = 40 // 子菜单标题不超过40个字节
)
View Source
const (
	ButtonKeyLenLimit = 128 // 菜单KEY值不能超过128字节
	ButtonURLLenLimit = 256 // 网页链接不能超过256字节
)
View Source
const (
	BUTTON_TYPE_CLICK              = "click"              // 点击推事件
	BUTTON_TYPE_VIEW               = "view"               // 跳转URL
	BUTTON_TYPE_SCANCODE_PUSH      = "scancode_push"      // 扫码推事件
	BUTTON_TYPE_SCANCODE_WAITMSG   = "scancode_waitmsg"   // 扫码带提示
	BUTTON_TYPE_PIC_SYSPHOTO       = "pic_sysphoto"       // 系统拍照发图
	BUTTON_TYPE_PIC_PHOTO_OR_ALBUM = "pic_photo_or_album" // 拍照或者相册发图
	BUTTON_TYPE_PIC_WEIXIN         = "pic_weixin"         // 微信相册发图
	BUTTON_TYPE_LOCATION_SELECT    = "location_select"    // 发送位置
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Button

type Button struct {
	Type       string   `json:"type,omitempty"`       // 菜单的响应动作类型
	Name       string   `json:"name"`                 // 菜单标题,不超过16个字节,子菜单不超过40个字节
	Key        string   `json:"key,omitempty"`        // 菜单KEY值,用于消息接口推送,不超过128字节
	URL        string   `json:"url,omitempty"`        // 网页链接,用户点击菜单可打开链接,不超过256字节
	SubButtons []Button `json:"sub_button,omitempty"` // 二级菜单数组,个数应为1~5个
}

菜单的按钮

func (*Button) InitToClickButton

func (btn *Button) InitToClickButton(name, key string)

初始化 btn 指向的 Button 为 click 类型按钮

func (*Button) InitToLocationSelectButton

func (btn *Button) InitToLocationSelectButton(name, key string)

初始化 btn 指向的 Button 为 弹出地理位置选择器 类型按钮

func (*Button) InitToPicPhotoOrAlbumButton

func (btn *Button) InitToPicPhotoOrAlbumButton(name, key string)

初始化 btn 指向的 Button 为 弹出拍照或者相册发图 类型按钮

func (*Button) InitToPicSysPhotoButton

func (btn *Button) InitToPicSysPhotoButton(name, key string)

初始化 btn 指向的 Button 为 弹出系统拍照发图 类型按钮

func (*Button) InitToPicWeixinButton

func (btn *Button) InitToPicWeixinButton(name, key string)

初始化 btn 指向的 Button 为 弹出微信相册发图器 类型按钮

func (*Button) InitToScanCodePushButton

func (btn *Button) InitToScanCodePushButton(name, key string)

初始化 btn 指向的 Button 为 扫码推事件 类型按钮

func (*Button) InitToScanCodeWaitMsgButton

func (btn *Button) InitToScanCodeWaitMsgButton(name, key string)

初始化 btn 指向的 Button 为 扫码推事件且弹出“消息接收中”提示框 类型按钮

func (*Button) InitToSubMenuButton

func (btn *Button) InitToSubMenuButton(name string, subButtons []Button)

初始化 btn 指向的 Button 为 子菜单 类型按钮

func (*Button) InitToViewButton

func (btn *Button) InitToViewButton(name, url string)

初始化 btn 指向的 Button 为 view 类型按钮

type Menu struct {
	Buttons []Button `json:"button,omitempty"` // 一级菜单数组,个数应为1~3个
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL