#popup #sencha-touch #overlay
#всплывающее окно #sencha-touch #наложение
Вопрос:
Я хочу создать всплывающее окно, похожее на iPad, с формой входа в систему в Sencha touch. Как я могу это сделать?
Комментарии:
1. Я смог показать всплывающее окно. Но случилось ли так, что вы отклонили его нажатием кнопки? Потому что, установив
hideOnMaskTap: true
, я могу добиться этого при нажатии в фоновом режиме. Я не мог разобраться с нажатием кнопки.2. это было так просто, как я и предполагал
gkPopover.hide();
добавьте это в любой обработчик кнопок, чтобы вы могли отменить всплывающее окно при нажатии кнопки.
Ответ №1:
Вы можете попробовать создать обычную внешнюю панель, чтобы она выглядела как всплывающее окно
var gkpopover = new Ext.Panel({
id :'gkpopoverpanel',
floating:true,
modal:true,
width:'100px',
height:'100px', });
Примечание: Никогда не забывайте устанавливать высоту и ширину.
и чтобы показать
gkpopover.show('pop');
надеюсь, это имеет смысл.
Комментарии:
1. также вы можете добавить
centered: true
, чтобы всплывающее окно оставалось в центре экрана.
Ответ №2:
В sencha touch 2 функция floating обесценивается. Я изменил код @geekay, чтобы;
//show info popover?
var popoverpanel = new Ext.Panel({
modal:true,
left:'10%',
top:'10%',
width:'80%',
height:'80%',
hideOnMaskTap: true,
html:data.info
});
Ext.Viewport.add(popoverpanel);
popoverpanel.show('pop');
Ему отдаются должное!
Ответ №3:
Как указано в этом посте, в sencha есть именно то, что вам нужно.
Попробуйте это :
new Ext.Panel({
fullscreen : true,
items : [
{
xtype : 'toolbar',
docked : 'top',
items : [
{
text : 'Open',
handler : function (button) {
var panel = new Ext.Panel({
height : 200,
width : 200,
html : 'Hello'
});
panel.showBy(button, 'tr-bc?');
}
}
]
}
]});