2013-10-16 38 views
0

我正在開發一個日曆,其日期的最大範圍爲90天。4.1中的android片段中的GridView適配器問題Jellybean

我有一個活動和片段代表可用來選擇日期的月份。我正在使用片段,因爲我使用的viewpager的可滑動性(我敢肯定這是一個字)

到目前爲止,它在2.2,2.3,4.0和4.2,但在4.1,我的代碼只是沒有做它應該做的。

我在每個片段內有一個gridview來表示這個月的日子。我在每個gridview上設置了一個onItemClickListener。在偵聽器中,我在adapterView上獲取一個句柄以檢索正確的適配器,從而計算出正確的日期。在我測試過的每個操作系統版本上工作得很好,除了4.1。 4.1給我錯了適配器。

作爲4.1的黑客測試,然後調用父活動來獲取viewpager的當前位置,並得到片段的句柄,它是正確的適配器。

但是,在這種方法中,我的selector.xml文件被打破,即只點擊「某些」日期將導致我的選擇器觸發。即佔據第1列和第7列的週末。

如果其他人有這種行爲經歷這種行爲,一個正確的方向點將是最受歡迎的。即如何修復不正確的適配器回來,或如何解決我的selector的非開機問題。我不想在代碼中使用代碼,因爲我上面的描述比較冗長。但我會張貼代碼,如果有人想看到它

回答

1

所以我設法弄清楚這一點,這是我的假設上面沒有。 adapterview沒有問題,問題是視圖分頁器和片段的z索引,觸摸事件正在由不正確的片段註冊。

修復方法是將gloabalLayoutListener添加到viewpager,然後獲取第一個視圖,然後調用view.bringChildToFront();

問題修復,我希望這可以幫助別人。

+0

夥計,謝謝,它正在工作 –