[英]Items in Sencha Touch Carousel disappearing
我目前正在使用Sencha Touch構建應用程序。 我們的頁面上有一個特定的輪播,其中包含多個項目。 單擊其他面板上的按鈕后,某些項目將添加到面板中或從中刪除。
問題 :所有操作均按計划進行,但第一次單擊時再次單擊該按鈕 ,該功能停止工作,並且“輪播”顯示變為空白,沒有任何項目可見。
下面是更改轉盤的內容的按鈕處理程序 itemsCarousel
。 該函數將itemPanels[ b.getBadgeText() ]
到itemsCarousel
的項目中。 對於前四次點擊,效果很好。 大約過一會兒,當我單擊一個按鈕時,“輪播”中的所有項目都消失了,甚至無法從控制台手動調用“輪播”,也無法添加或刪除更多內容。
handler: function(b, e) {
itemsCarousel.insert(1, itemPanels[ b.getBadgeText() ]);
itemsCarousel.doLayout(); itemsCarousel.doComponentLayout();
itemsCarousel.setActiveItem(1);
itemsCarousel.remove(0, false);
}
我嘗試過的事情:
0
,將0
設置0
活動,然后移除1
更改順序。 .insert()
語句中,有時出現在.remove()
。 .remove()
調用(如上所示)和itemsCarousel
的聲明中調整autoDestroy
參數。 如果您需要更多代碼,我可以發布您認為相關的任何內容,但我不想用過多的代碼來污染該線程。 謝謝你的幫助!
編輯:如果有人知道另一種方法來重現相同的功能,我也很樂意。 我正在考慮也許創建一個帶有一個項目(一個轉盤)的虛擬容器容器,並刪除整個轉盤並在單擊按鈕時重新添加一個全新的(帶有新項目)一個?
好吧,我想出了如何使用其他方法重現功能的方法。
我構建了多個輪播,每個輪播都包含我想要的面板,然后有一個根面板,該面板簡單地根據按鈕的按下來設置活動的輪播。 例如,層次結構如下現在這個樣子:
rootPanel
{
carousel[0]
{
panel1
panel2
}
carousel[1]
{
panel3
panel4
}
...
}
然后執行rootPanel.setActiveItem(x)
來顯示新的輪播。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.