0

我注意到一些程序使用弹出工具栏作为上下文菜单而不是实际的上下文菜单,例如在 Sense 中(见图 :)

在此处输入图像描述

我将如何实施这样的事情?

4

2 回答 2

1

它被称为快速操作弹出窗口,您必须自己创建它。

请参阅此链接

示例代码片段::

//Add action item
ActionItem addAction = new ActionItem();
addAction.setTitle("Add");
addAction.setIcon(getResources().getDrawable(R.drawable.ic_add));

//Accept action item
ActionItem accAction = new ActionItem();

accAction.setTitle("Accept");
accAction.setIcon(getResources().getDrawable(R.drawable.ic_accept));

//Upload action item
ActionItem upAction = new ActionItem();
upAction.setTitle("Upload");
upAction.setIcon(getResources().getDrawable(R.drawable.ic_up));

创建快速操作实例并设置监听器

final QuickAction mQuickAction  = new QuickAction(this);

mQuickAction.addActionItem(addAction);
mQuickAction.addActionItem(accAction);
mQuickAction.addActionItem(upAction);

//setup the action item click listener
mQuickAction.setOnActionItemClickListener(new QuickAction.OnActionItemClickListener() {
    @Override
        public void onItemClick(int pos) {
        if (pos == 0) { //Add item selected
           Toast.makeText(Example1Activity.this, "Add item selected", Toast.LENGTH_SHORT).show();
        } else if (pos == 1) { //Accept item selected
           Toast.makeText(Example1Activity.this, "Accept item selected", Toast.LENGTH_SHORT).show();
        } else if (pos == 2) { //Upload item selected
           Toast.makeText(Example1Activity.this, "Upload items selected", Toast.LENGTH_SHORT).show();
        }
    }
});
于 2012-05-27T09:42:56.167 回答
1

这些链接完全符合您的需求,顺便说一下,这个弹出工具被称为 QuickAction:

快速行动

快速操作对话框

绿色机器人 QuickAction

QuickActionBar 和 GridAction

希望对你有帮助

于 2012-05-27T10:30:40.043 回答