Как использовать ActionSheet в ST2 - PullRequest
1 голос
/ 15 ноября 2011

Я хотел бы использовать лист действий, но неясно, где его разместить.Я попытался добавить его в функцию события кнопки, но он не отображается (однако модальный экран показывает).Я получаю сообщение о ActionSheet # show, показывающем компонент, который в настоящее время не имеет контейнера.Пожалуйста, используйте Ext.Viewport.add (), чтобы добавить этот компонент в область просмотра.Не уверен, как это сделать - использование Ext.Viewport.add () не работает для меня - возможно, из-за моего макета:

У меня есть контроллер / вид вьюпорта, который является макетом карты,Когда я нажимаю кнопку, в контроллере области просмотра появляется функция, которая загружает новый контроллер / карту просмотра в область просмотра.Список действий находится в одной из этих карточек.Приложение слишком велико для публикации, поэтому, надеюсь, это имеет смысл.

Я попытался добавить лист действий в массиве моих элементов просмотра, но не знаю, как его отобразить - ссылка на лист действий xtype не делаеткажется, вернуть объект с помощью метода show ().

Редактировать: после дополнительных экспериментов кажется, что проблема заключается в том, что я помещаю его внутрь карты - контейнер макета карты имеет относительную позицию и абсолютную таблицу действий- почему-то это приводит к тому, что лист действий исчезает с экрана.Установка контейнера карты на абсолютное исправляет это, но теперь у меня есть проблемы с позициями navbar.Предложения?

Так немного застрял ...

1 Ответ

1 голос
/ 20 мая 2012

Это то, что вам нужно сделать, чтобы показать свой лист действий:

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();
...