簡體   English   中英

Sencha觸摸列表並滾動到記錄

[英]Sencha Touch list and scrollToRecord

我的Sencha觸摸列表很長,我拼命嘗試在啟動時將該列表滾動到中間的某個位置。

功能

btnScroll:function() {
    var list = Ext.getCmp("myList");
    var position = 4;
    list.scrollToRecord(list.getStore().getAt(position));
}

如果我點擊按鈕,則可以工作: scrollBtn.setHandler(btnScroll); ,但不適用於

MyList.constructor:function() {
    ...
    this.callParent();
    this.btnScroll();
}

它只是失敗而沒有錯誤消息。 如果在調用函數中執行同樣的操作:

btnOpenList:function() {
    var list = new MyList();
    list.show();
    list.btnScroll();
}

如果我使用setTimeout(this.btnScroll,70);它有時會起作用(! setTimeout(this.btnScroll,70); 相反,但是如果我使用setTimeout(this.btnScroll,50); setTimeout(this.btnScroll,120);

我認為發生這種情況是因為列表元素未呈現/定位。 但是我沒有發現任何后退事件。

那么,如何定義列表應從其開始的滾動位置?

您可以在彩繪事件中做到這一點。 只需將其添加到包含綁定繪畫事件所需的所有組件的列表或容器中,然后在列表中將事件添加到btn ..或模板所需的任何內容即可。

element.clearListeners();
element.addListener('tap',function(){
    //...
});

暫無
暫無

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

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