如何在ST2中使用ActionSheet

时间:2011-11-15 19:12:15

标签: sencha-touch sencha-touch-2

我想使用动作表但不清楚放在哪里。我已经尝试将它添加到按钮事件功能但它没有显示(但模态屏幕确实如此)。我收到一条关于ActionSheet#show的消息,显示当前没有任何容器的组件。请使用Ext.Viewport.add()将此组件添加到视口。不知道怎么做 - 使用Ext.Viewport.add()对我不起作用 - 我可能是因为我的布局是:

我有一个视口控制器/视图,它是卡片布局。当我单击一个按钮时,我在视口控制器中有一个功能,它在视口中加载一个新的控制器/视图卡。动作表位于其中一张卡片中。该应用程序是大到发布所以希望它是有道理的。

我已经尝试在我的视图项数组中添加动作表但不知道如何使其显示 - 对xtype动作表的引用不会返回带有show()方法的对象。

编辑:经过更多实验后,问题似乎是我将它放在卡片内 - 卡片布局容器具有相对位置且动作表是绝对的 - 不知何故这导致动作片离开屏幕。设置卡容器绝对修复它,但现在我有导航栏位置的问题。建议?

所以有点卡住......

1 个答案:

答案 0 :(得分:1)

这是您展示行动表所需要做的事情:

var actionSheet = Ext.create('Ext.ActionSheet', {
    items: [
        {
            text: 'Delete draft',
            ui  : 'decline'
        },
        {
            text: 'Save draft'
        },
        {
            text: 'Cancel',
            ui  : 'confirm'
        }
    ]
});

Ext.Viewport.add(actionSheet);
actionSheet.show();