0

我正在尝试使用 miamicode 制作相同的应用程序,我在第 3 步 http://miamicoder.com/2012/how-to-create-a-sencha-touch-2-app-part-3/

我尝试制作转到新笔记的按钮(切换到新屏幕并创建新笔记)

示例中的代码是这样的:

   onNewNoteCommand: function () {
   console.log("onNewNoteCommand");
   var now = new Date();
   var noteId = (now.getTime()).toString() + (this.getRandomInt(0, 100)).toString();
   var newNote = Ext.create("NotesApp.model.Note", {
          id: noteId,
            dateCreated: now,
            title: "",
            narrative: ""
        });

        this.activateNoteEditor(newNote);
    }

activateNotesList 函数是这样的:

activateNotesList: function () {

   Ext.Viewport.animateActiveItem(this.getNotesListView(), this.slideRightTransition);

在我自己的示例中,我尝试在不传递数据的情况下进入编辑视图。所以我试试这个:

onNewNoteCommand:function()

{
var noteEditor = this.getNoteEditor();

 // Ext.Viewport.add(noteEditor);  also tried this.

Ext.Viewport.setActiveItem(noteEditor);

该代码运行没有错误,但屏幕没有改变。有什么建议吗?add 有什么区别?

如何将视口(尚未创建任何自定义视口)设置为卡片?这是 setactiveitem 不起作用的问题吗?在视图之间切换的任何其他方式?

4

1 回答 1

1

google chrome 浏览器的控制台中是否有一些错误?Ctrl+Shift+J打开。

您还必须检查 noteEditor 是否等于 Object 或 Number。

来自 sencha 文档:setActiveItem( Object/Number activeItem )

于 2012-05-23T14:41:26.250 回答