我在sencha touch 2中创建了一个索引页面,在其中我在容器内创建了一些自定义按钮
Ext.define('ov_app.view.Main', {
extend: 'Ext.Container',
requires:[
'ov_app.view.Eligibelity',
],
xtype: 'main',
css:[{
"path": "default-theme.css",
}],
config:{
scrollable: true,
items: [
{ xtype: 'panel',
margin:10,
items:[
{
xtype:'button',
margin: '0 0 8 0',
cls:"main_navigation",
style:'background-color:#000',
action: 'push-view',
},{
xtype:'button',
margin: '0 0 8 0',
cls:"main_navigation",
},{
xtype:'button',
cls:"main_navigation",
}
]
}]
}
});
这些按钮看起来像这个
单击橙色按钮后,我想显示一个新视图。
我尝试了ext.Navigation view,但它不是我想要的。我必须在按钮上添加一个事件监听器,还是我必须做一些其他事情请建议
我在controller文件夹main.js中创建了一个新控制器
Ext.define('ov_app.controller.Main', {
extend: 'Ext.app.Controller',
config:{
control: {
'button[action=push-view]': {
tap: 'pushViewFunction'
}
},
},
pushViewFunction: function() {
Ext.Viewport.add({
xtype: 'Eligibelity'
});
}
});
还有我的新视图Eligibelity.js代码
`
Ext.define('ov_app.view.Eligibelity', {
xtype : 'Eligibelity',
config: {
layout: 'vbox',
cls: 'big',
items: [
{
xtype: 'title',
title: 'Twitter Search'
}
]
}
});
还有我的app.js密码
'Ext.loader.set路径({'Ext':'touch/src','ov_app':'app'});
Ext.application({
name: 'ov_app',
requires: [
'Ext.MessageBox'
],
views: ['Main', 'Eligibelity'],
controllers: ['Main'],
launch: function() {
// Destroy the #appLoadingIndicator element
Ext.fly('appLoadingIndicator').destroy();
// Initialize the main view
Ext.Viewport.add(Ext.create('ov_app.view.Main'));
},
onUpdated: function() {
Ext.Msg.confirm(
"Application Update",
"This application has just successfully been updated to the latest version. Reload now?",
function(buttonId) {
if (buttonId === 'yes') {
window.location.reload();
}
}
);
}
});
`
在按钮上,必须添加如下处理程序:
{
xtype:'button',
cls:"main_navigation",
handler: function() {
Ext.create( 'Ext.window.Window', {
title: 'Works',
height: 300,
width: 300,
html: 'Create whatever view you want.'
} ).show();
}
}
您想在单击按钮时创建什么视图?
编辑:添加show()
以显示窗口。但你可以在那里做任何动作。
您可以添加一个action
到您的按钮以供参考:
{
xtype: 'button',
action: 'push-view'
}
然后,在控制器中,当用户点击按钮时,您可以按下“新建视图”,如下所示:
control: {
'button[action=push-view]': {
tap: 'pushViewFunction'
}
},
pushViewFunction: function() {
Ext.Viewport.add({
xtype: 'newView' // This is the xtype of new view you want to push
});
}
编辑
你需要把你的控件
放在config
块中:
config: {
control: {
'button[action=push-view]': {
tap: 'pushViewFunction'
}
}
},
pushViewFunction: function() {
Ext.Viewport.add({
xtype: 'newView' // This is the xtype of new view you want to push
});
}
编辑2:
您可以使用setActiveItem
或animateActiveItem
:
pushViewFunction: function() {
Ext.Viewport.animateActiveItem({xtype: 'Eligibelity'}, {type:'slide', direction: 'left'});
}
以下是基于您所有发布代码的工作演示。
问题内容: 我有OKNO1和OKNO2,我想严格在OKNO1中显示带有图像的按钮。 此刻,带有图像的按钮将全局显示。我曾经用过cp5.addButton,在那里做过.moveTo(“okno1”); 现在,图像按钮使用OOP / Java。如何解决一个棘手的问题?您可以通过什么方式完成任务。我想再次使用void draw()。 Complete code example: 问题答案: 帮助他人(包
我(目前)有三个按钮 使用这些按钮,我想显示不同的菜单/覆盖。覆盖图如下所示: 这方面的JS是: 我的问题是只有菜单1正在显示。脚本可以正常工作,但是menu2和menu3没有显示。 我想这一定是缺少的东西。也许是a$(this)什么的(对不起我的JS已经不是以前的样子了)。我在中循环,然后从google chrome dev中点击了“Right”按钮(我想,很难说出来)。 预期结果:如果我按下按
以下是我到目前为止的布局: 我尝试通过编程方式向FrameLayout添加一个ImageButton,但这似乎不起作用。
视图与所有其他选项卡栏项目(事件、挂起、浏览、我的个人资料)配合良好,但对于“更多”部分,当推送到相关视图控制器时,选项卡栏视图控制器将显示选项卡栏上方的新底部栏,如图所示。 现在我试图设置底部栏为无,试图隐藏底部栏在属性检查员,没有工作。我想帮助删除这个空白视图视为底部栏,显示在标签栏上方。
此表单在基于函数的视图中显示单选按钮,但在我引入基于类的视图时更改为复选框,有什么解决办法。我希望他们再次显示单选按钮 表单.py models.py 模板 views.py
我在制作这个项目网站的时候,突然想到要制作一个弹出框来显示产品的描述。当我制作弹出式消息框时,它会出现在单击不同的图像时,我看到它会显示不同产品的相同消息,即使在对每种产品给出不同的描述之后也是如此。我不太懂JavaScript,但我想必须在那里添加一些代码。 这里是代码- 这是我从codepen中获取的模板。木卫一。