2011-06-11 22 views
7

Sencha touch'ın bir listede görüntülendiği kişiler listem var. Daha sonra listede bir isme tıkladığınızda sağa doğru kaymalı ve Hello {contact name} yazmalısınız! ama şu an üzerinde kayarken, sadece Merhaba diyor! 29. satırda, eşya tapası için hareketin olduğu yerde, sorun burada. Sadece doğru şekilde nasıl biçimlendirileceğini bilmiyorum. Aşağıda benim kaynak kodum var. ILLUSTRATORNG.Sencha Touch itemtap

cevap

11

Öğe olayına iletilen ilk argüman, ListView öğesinin kaydının kaydı değil, DataView'ın kendisi. Dokümanlar

:

itemtap: (Ext.DataView bu, Sayı indeksi, Ext.Element öğesi Ext.EventObject e) Yangınlar bir düğüm

Listeners will be called with the following arguments: 
this : Ext.DataView 
    The DataView object 
index : Number 
    The index of the item that was tapped 
item : Ext.Element 
    The item element 
e : Ext.EventObject 
    The event object 
üzerine dokunulduğunda

Sen kullanarak aday kayıt yakalayabilir:

dataView.store.getAt(index); // where 'dataView' is 1st argument and 'index' the 2nd 
+0

Sadece sencha'ya dokunarak, dataview nesnesinin, dokunulan öğenin dizininin, öğe öğesinin ve olay nesnesinin ne olduğunu öğreniyorum. Ayrıca, data 1. argümanı nasıl gösterir ve 2. sayfayı 'indeksleyin'. Yardım ettiğin için teşekkür ederim. – Alex

+0

A Liste bir DataView'den miras alır ve 'itemtap' olayı, DataView taban sınıfından miras alınan bir olaydır. Bu nedenle belgeler bir Liste kullanıldığında biraz kafa karıştırıcıdır. Olay işleyicisinin ilk argümanı, List örneğinize bir referans içerir (örneğinizdeki 'ListDemo.listPanel' değişkenine eşdeğerdir). 'Indeks' argümanı, Listede yer alan öğeye düştüğü yeri gösterir örn. Taranan 1. liste öğesi indeks = 0, ikinci öğe taranan indeks = 1 vs. verir. Basit kullanım durumlarda, öğeyi ve e argümanları görmezden gelebilirsiniz - artı boşluktan kaçarım .. :) – Stuart

+0

Bu, gruplanmış listelerle çalışmak. – Art

9
itemtap: function(view, index, item, e) { 
    var rec = view.getStore().getAt(index); 
    ListDemo.detailPanel.update(rec.data); 
} 

Bu şekilde çalışmaya başladım.

+2

Gruplandırılmış listelerle çalışırken bu kırık gibi görünüyor. – Art

+1

Sencha Touch 2'de güncelleme yönteminin şu anda setData() olduğunu unutmayın. – cyberwombat

İlgili konular