【问题标题】:How to set panel title dynamically in Sencha Touch?如何在 Sencha Touch 中动态设置面板标题?
【发布时间】:2013-06-08 12:49:57
【问题描述】:

我添加了一个 NavigationView 并在其中添加了 List。现在列表 itemtap 设置面板标题如下:

var view = Ext.getCmp(‘MyPanel’);
if(!view)
    view = Ext.create('MyApp.view.'+record.data.ScreenId,{title: ‘Tension’});
view.setTitle(‘Tension’); // problem
navigationView.push(view);

但它不起作用,所以让我知道执行此任务的正确方法是什么。

感谢任何帮助!

【问题讨论】:

  • 您不必使用 setTitle,因为您在创建视图时已经在配置对象中设置了标题。不行吗?
  • 基本上'MpPanel'表单已经创建。所以在这种情况下如果条件块不会执行,所以我在下一行设置 setTitle 但它不起作用。
  • 我认为 Panel 没有setTitle 方法:docs.sencha.com/touch/2.2.1/#!/api/Ext.Panel
  • @ArunSingh 在 MyPanel 中您添加了标题栏.. 是吗?

标签: sencha-touch sencha-touch-2 sencha-architect


【解决方案1】:

据我了解,您有一个名为“MyPanel”的面板,并在其中添加了标题栏。

这种情况下不能直接改变MyPanel的标题,所以需要从MyPanel中获取titleBar,然后使用setTitle方法。 (对于您的信息,titleBar 有 setTitle 方法)。

var view = Ext.getCmp(‘MyPanel’);

var MyPanelTitleBar = view.getComponent('MyPanelTitleId'); // you need to set itemId (MyPanelTitleId) to titleBar.

if(!view)
    view = Ext.create('MyApp.view.'+record.data.ScreenId,{title: ‘Tension’});
MyPanelTitleBar.setTitle(‘Tension’); // not a problem anymore

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-25
    相关资源
    最近更新 更多