簡體   English   中英

輕按列表項后,在Sencha Touch中創建操作表

[英]Creating Action Sheet in Sencha Touch when a list item is `tapped`

我有一個從Sencha Touch中的JSON數據生成的列表。 本質上,該列表是從數據存儲對象生成的,並且充當“聯系人”列表。 我想知道如何添加功能,以便當用戶點擊列表項之一時,Sencha Touch中將顯示一個操作表,其中提供了許多操作(例如“呼叫”,“發送消息”和“刪除” ')。

這是我用來生成ListvIew的代碼:

var listView = new Ext.List({
    store: friendStore,
    itemTpl: '{forename} {surname}<br />{phoneNumber}',
    grouped: true,
    indexBar: true
});

我知道我可以使用on參數,但是會將tap事件附加到列表,而不是每個項目。 顯示的操作表還將包含與tel://一些鏈接,因此它也必須是動態的(因為要撥打的電話號碼也存儲在數據存儲區中的{phoneNumber}鍵下{phoneNumber}

希望有道理...

ListView有一個應該監聽的itemtap事件。 從文檔:

itemtap : ( Ext.DataView view, Number index, Ext.Element item, Ext.EventObject e )

要獲取與點擊的項目相對應的記錄,只需執行view.getStore()。getAt(index)。 然后,在事件處理程序中,只需根據記錄中的數據重新創建ActionSheet並顯示它即可。

與將偵聽器附加到列表相比,將偵聽器附加到列表要比附加到每個單獨的項目更有效。

這不是一個很好的答案,但我會看一下DataView ,它是List的父級。

它具有一個名為itemSelector的屬性,您可以使用它來指定列表條目的子部分。 如果使用itemSelector,則還必須提供tpl屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM