我正在構建基於紙牌遊戲的應用程序。用戶可以看他自己的卡片;他也可以「在桌子周圍」滾動來查看對手的公開牌。屏幕一次顯示一個玩家(用戶或對手之一)。全屏畫廊滾動問題
我用Gallery來實現它。有了一個自定義適配器,我把它做成了圓形。我還截獲了onFling(),以確保它「閃現」到下一位玩家,而不是在桌子周圍。到現在爲止還挺好。
這是問題所在。如果圖庫的元素與整個屏幕一樣寬,則圖庫效果不佳。我無法將視圖「稍微」拖動以暴露下一位玩家。大多數時候,投擲並不起作用。當它的時候,沒有動畫;視圖只是切換到下一個玩家。
我通過使畫廊元素比屏幕窄2個像素來解決它。 1像素是不夠的:它修復了向一個方向滾動,但另一個方向仍然「僵硬」。
我寫這個有兩個原因。首先,如果你有類似的問題,這篇文章可能會爲你節省幾個小時。其次,我很好奇:任何Android專家都可以解釋Gallery控件的這種行爲嗎?
沒有必要:它現在工作正常,現在我略微縮小了畫廊的子視圖。使用水平滾動視圖,除了調整滾動以捕捉屏幕之外,我還需要做些事情來使滾動成爲圓形。我更感興趣的是爲什麼畫廊對子視圖的寬度非常敏感。 – user1334767