Sencha Touch Charts何时处理DrawComponent Sprites上的事件?

时间:2012-03-12 11:36:46

标签: sencha-touch-2 sencha-charts

在Sencha Touch Charts 2 beta发行版中,绘图指南示例代码中有一个Sprite监听触摸开始的示例。给出的代码无法绘制任何精灵,因为它无法在DOM上插入画布。但是,可以通过替换它来解决这个问题:

    //add the component to the panel
    Ext.create('Ext.chart.Panel', {
      fullscreen: true,
      title: 'Yellow Circle',
      items: drawComponent
    });

用这个:

    //add the component to the panel
    Ext.create('Ext.chart.Panel', {
      fullscreen: true,
      title: 'Yellow Circle',
      chart: drawComponent
    });

现在,我真的想让事件处理工作。示例代码继续:

// Add a circle sprite
var myCircle = drawComponent.surface.add({
    type: 'circle',
    x: 100,
    y: 100,
    radius: 100,
    fill: '#cc5'
});

// Now do stuff with the sprite, like changing its properties:
myCircle.setAttributes({
    fill: '#ccc'
}, true);

// Remember always to refresh the image
drawComponent.surface.renderFrame();

// or animate an attribute on the sprite
// no need to refresh the image when adding animations.
myCircle.fx.start({
    fill: '#555'
});

// Add a touch listener to the sprite
myCircle.addListener('touchstart', function() {
    alert('touchstarted!');
});

但最后的警报从未发生过触摸。有什么想法吗?

drawComponent.addListener('touchstart'...工作正常,但当然没有本地化为圆形精灵。

---经过更多调查---

我认为答案很简单就是精灵上的事件处理尚未实现。例如在touch-charts / src / draw / engine / Canvas.js中我们有Ext.draw.engine.Canvas的定义,

getSpriteForEvent: function(e) {
    return null; //TODO!!!
},

好的 - 是时候改变'如何?'的问题了到'什么时候?':

  

'Sencha Touch何时支持Sprite事件处理?“

0 个答案:

没有答案