2012-10-08 24 views
0

我是titanium的新手,我試圖根據wireframes建立一些原型。以下是我正在嘗試構建的原型的wireframe鈦功能

你看到的是從google places api獲取的餐館列表。這裏的主要功能是黑色條帶,它將處於固定的位置,並在其下方的特定餐廳中保存評級和評論的細節。

所以,如果我滾動餐廳的黑色地帶應該得到它下面的特定餐廳的評級細節。

到目前爲止,我能夠從谷歌地點API中檢索餐館數據到表格視圖的行中。

我不確定該調用此功能或如何實現此功能。

你們可以給我方向繼續前進......

+1

爲什麼不把這些信息作爲行的一部分?這樣可以更輕鬆地瀏覽不同地點之間的信息和比較。 – Martin

回答

0

把它作爲行的一部分包含起來會不會容易得多?否則,用戶一次只能看到一行信息,我認爲這是不好的設計。

更重要的是,這個在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; 
}); 

現在,你必須在表中的實際行對象,你可以提取

這只是一個大致輪廓,這並沒有考慮到一些平臺之間的差異,我留給你弄清楚,但這是一個很好的一般方法。

+0

是的,我完全同意這種模式不是用戶友好的,但我也有不同的屏幕版本。我的工作是開發我給出的所有屏幕的原型。我需要以某種方式實現該功能。你能給我一個暗示邏輯來達到這個目的嗎?順便說一句,我設法風格的表格視圖和行。 –

+0

謝謝Josiah,我會看看我能做什麼! –

+0

嗨,喬西亞,我能得到詳細的解釋嗎?我不知道你爲什麼使用scrollEnd方法。 –

2

@Sarat,

我假設你想開發這個原型的iOS或Android應用程序,因此,使用鈦我有以下建議設計&功能

爲了達到設計: 對於Android的 - 與列表視圖中使用相對佈局,你可以在上面額定載荷/查看圖標位置固定

適用於iOS/iPhone - 添加父視圖,然後添加表視圖加載餐廳和添加評級/查看圖標與餐廳同一個頂級排名的另一種表視圖列表

來實現功能: 您將獲得表格視圖的第一個單元索引,其中您正在加載餐館列表,因此請使用單元格標識符來檢查表格視圖的頂部是哪個表格單元格。

+0

你的解釋有點高。我無法理解如何檢測鈦表格視圖頂部的行?有沒有任何財產/方法? –