Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android 4.0中對話框項目文字無法用setText變更問題

Android 4.0中對話框項目文字無法用setText變更問題

編輯:關於android開發

今天在手機適配中發現漫畫播放器的菜單中點擊“自動播放”後,文字無法發生改變。後來發現,在點擊“自動播放”,菜單消失的瞬間,菜單項文字確實發生了變化,只是再次打開菜單時菜單項文字又變回了“手動播放”,表明setText方法確實被調用並且生效了。Android 2.x的手機上運行不會發生該問題。

初步判斷是作為菜單的GridView被重新生成了。但是通過log打印發現情況並非如此。

最後懷疑GridView所使用的SimpleAdapter中的getView被調用,引起菜單項文字被重新初始化。將SimpleAdapter置換成匿名內部類,在getView方法中打印log。發現菜單重新彈出時GridView雖然沒有重新生成,但是SimpleAdapter的getView方法確實被重新調用了,引起菜單項重置。這樣的話,就在getView中根據播放器的播放狀態修改“自動播放”菜單項的文字就可以了。

至此,問題解決。

順便一提。2.x的系統中菜單重新顯示時菜單項沒有重新生成。推測可能是4.0系統中在GridView不顯示時自動回收了裡面的子view,而不是等待GridView被銷毀時才回收。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved