0

イメージとデータビューの 2 つのアイテムをそれぞれ含むコンテナーを含むカルーセルを作成します。クリックすると、画像を反転してデータビューを表示したいと思います。私の問題は、正しい要素でタップ イベントが発生しないことです。「img」要素で起動しますが、carous では起動しません。

Ext.define('MY.controller.Mycarousel' , {
extend: 'Ext.app.Controller',
requires: [ 'Ext.Img' ],

config: {
    refs: {
        mycarouselView: '#mycarousel',
    },

    control: {
        mycarouselView: {
            activate: 'flipImage',          // works
            tap: 'flipImage',               // doesn't work
        },
        'img': {
            tap: 'flipImage',               // works
        }
    }
},

カルーセルビューでタップイベントを取得するにはどうすればよいですか?

私も試しました:

Ext.define('MY.controller.Mycarousel' , {
extend: 'Ext.app.Controller',
requires: [ 'Ext.Img' ],

config: {
    refs: {
        myCarouselDataview: 'dataview'
    },

    control: {
        myCarouselDataview: {
            initialize: 'flipImage',     // fires
            itemsingletap: 'flipImage',  // doesn't fire
            itemtap: 'flipImage',        // doesn't fire
            itemtouchstart: 'flipImage'  // doesn't fire
        },
        'img': {
            tap: 'flipImage', // fires
        },
    }
},

画像をクリックすると、画像が反転し、データビューが表示され、その html が表示されますが、クリックしてもイベントは発生しません。それは私には神秘的です...

4

1 に答える 1

1

Ext.carousel.Carousel にはそのようなイベントがないため、カルーセルのタップは機能しません。

http://docs.sencha.com/touch/2-1/#!/api/Ext.carousel.Carousel

そのため、タップイベントはカルーセルのコンテンツによって発生する必要があります。これは、あなたの場合は img です。

于 2012-12-24T05:55:54.003 に答える