0

我正在 itemtap 上加载一个嵌套列表。我需要加载的是一个文件夹图像,以防它不是叶节点,以及一个文档图像,以防它是叶节点。

我认为这样做的一种方法是将图像加载到 json 数据本身中。但我不确定如何实现这一目标。

截至目前,我的模型仅包含字符串数据。我将如何在 thr 中加载图像数据?

//Defining a data structure for the Nested List
Ext.define('InfoImage.model.nestedListModel', {
    extend: 'Ext.data.Model',

     config:{
    fullscreen:'true',
    title:'Work Items Task 1',
    ui:'normal',
    cls:'nestedlistCls',
    xtype:'nestedList',
    // displayField : 'text',
    store:'nestedListStore'/*,
    getItemTextTpl: function() {
        var tplConstructor = '{text}' +
            '<tpl if="model === \'folder\'">'+
                '<img src="resources/images/refresh.png" >' 
                '</img>' +
            '</tpl>';
        return tplConstructor;
    }*/
   // itemTpl:'<div><img src="resources/images/refresh.png" > </img>{text}</div>'*/


}
});

我的json数据代码是:

{
    "items":[

         {
        "text":"1.1",
        "folder":"resources/images/refresh.png",
        "items":[
            {
                "text":"1.1.1",
                "items":[
                    {
                        "text":"1.a",
                        "leaf":true
                    }]
            }
        ]

    },


        {
            "text":"1.2",
            "items":[
                {
                    "text":"1.2.1",
                    "leaf":true
                }
            ]

        },
        {
            "text":"1.3",
            "items":[
                {
                    "text":"1.3.1",
                    "leaf":true
                }
            ]

        }
    ]

}

任何帮助表示赞赏。

提前致谢。

4

1 回答 1

0

首先,这可能是一个很好的参考:Nested List not loading in sencha

然后以下 JSON 将满足您的需要(假设您也在img_src模型中定义了字段)

items: [
{
    text: 'not_leaf',
    img_src: 'your_link_1',
      items: [
        { text: 'leaf_1', img_src: 'your_link_2',  leaf: true },
        { text: 'leaf_2', img_src: 'your_link_3', leaf: true }
      ]
    }
]

然后 Sencha Touch 会自动加载你所有的图像源 ,你可以对它们做任何你想做的事情。

注意:如果您只想监听和处理事件,itemtapleafitemtap在您的Ext.NestedList

希望这可以帮助。

于 2012-04-29T07:47:56.973 回答