把它作爲行的一部分包含起來會不會容易得多?否則,用戶一次只能看到一行信息,我認爲這是不好的設計。
更重要的是,這個在iOS上不會工作,除非您在TableView的末尾添加大量虛擬錶行,因爲用戶無法將最底部的行滾動到屏幕頂部!
This tutorial shows you how to have custom table rows.使用它作爲起點來添加您的評論和喜歡按鈕圖像。我真的看不到其他選擇,因爲您的固定位置方法需要對TableView組件進行黑客攻擊或使用變換將底部行移動到頂部。
編輯:
如果必須這樣做,最好的辦法,就是給一些空白錶行添加到過去的自己的真實錶行的末尾,以便用戶可以滾動一路到內容的最後一行(這種方式固定的位置可以檢測到它)。
下一頁創建視圖拿着三個按鈕,確保其絕對位置的窗口(使其保持固定),並具有zIndex的比的TableView更大:
var likeAndCommentHolderView = Ti.UI.createView({
top : 45,
left : 0,
//.... etc
zIndex : 101
});
window.add(likeCommentHolderView);
現在你必須弄清楚哪些排用戶結束了。這可以通過使用TableView的scrollEnd
事件並獲取事件的contentOffset
屬性來完成。當用戶完成滾動tableView中的行時觸發'scrollEnd'事件,它返回的事件有contentOffset
,這是您從tableView的頂部滾動了多少。使用簡單的數學,計算偏移除以rowHeight
,這是用戶正在查看的行索引。
// Assume table view is at coordinates : top=45, left=0 and you have defined rowHeight
tableView.addEventListener('scrollEnd', function(e) {
// Use this to determine which row your over
var contentOffset = e.contentOffset;
// Figure out the index
var rowIndex = contentOffset/rowHeight;
// Get the row, assume first section
var section = tableView.data[0];
var rowObject = section.rows[rowIndex];
// Now update your UI with data from the row
var name = rowObject.restaurantName;
});
現在,你必須在表中的實際行對象,你可以提取
這只是一個大致輪廓,這並沒有考慮到一些平臺之間的差異,我留給你弄清楚,但這是一個很好的一般方法。
爲什麼不把這些信息作爲行的一部分?這樣可以更輕鬆地瀏覽不同地點之間的信息和比較。 – Martin