私は、Sencha Touchがリストに表示している連絡先のリストを持っています。リスト内の名前をクリックすると、右にスライドしてHello {連絡先名}と答えてください!それが今スライドすると、こんにちは!29行目でアイテムタップのアクションが起こっている場所はどこですか?問題はここにあります。私はちょうどそれを正しくフォーマットする方法を知らない。以下は私のソースコードです。Sencha Touchのitemtap
ListDemo = new Ext.Application({
name: "ListDemo",
launch: function() {
ListDemo.detailPanel = new Ext.Panel({
id: 'detailpanel',
tpl: 'Hello, {firstName}!',
dockedItems: [
{
xtype: 'toolbar',
items: [{
text: 'back',
ui: 'back',
handler: function() {
ListDemo.Viewport.setActiveItem('disclosurelist', {type:'slide', direction:'right'});
}
}]
}
]
});
ListDemo.listPanel = new Ext.List({
id: 'disclosurelist',
store: ListDemo.ListStore,
itemTpl: '<div class="contact">{firstName} {lastName}</div>',
listeners:{
itemtap: function(record, index){
ListDemo.detailPanel.update(record.data);
ListDemo.Viewport.setActiveItem('detailpanel');
}
}
});
ListDemo.Viewport = new Ext.Panel ({
fullscreen: true,
layout: 'card',
cardSwitchAnimation: 'slide',
items: [ListDemo.listPanel, ListDemo.detailPanel]
});
}
});
私はちょうどデータビューオブジェクト、タップされたアイテムのインデックス、アイテム要素、およびイベントオブジェクトを覚えています。また、dataViewは第1引数、第2引数はどのようにインデックスされますか。ご協力いただきありがとうございます。 – Alex
ListはDataViewから継承し、 'itemtap'イベントはDataView基本クラスから継承されたイベントです。したがって、リストを使用する場合、ドキュメントは少し混乱します。イベントハンドラの最初の引数には、Listインスタンスへの参照が含まれています(例の変数 'ListDemo.listPanel'に相当)。 'index'引数は、List内のタップされた項目が落ちる場所を指します。 1番目のリストアイテムはタップされたインデックス= 0、タップされた2番目のアイテムはインデックス= 1などになります。単純なユースケースではアイテムとeの引数を無視できます。さらにスペースがなくなりました.. :) – Stuart
これはグループ化されたリストを使って作業します。 – Art