1
我非常想知道在致電invalidateOptionsMenu()
時會發生什麼情況。它會重新繪製整個操作欄,還是隻需撥打onCreateOptionsMenu()
,然後onPrepareOptionsMenu()
即可。根據android源代碼,它聲明選項菜單已更改,因此應該重新創建。下次需要顯示時,將調用onCreateOptionsMenu(android.view.Menu)
方法。我有幾點需要澄清:在Android中調用invalidateOptionsMenu()時會發生什麼?
- 它會以任何方式影響ActionBar選項卡嗎?
- 它影響活動佈局內的viewpager嗎?
- 它會影響與操作欄選項卡關聯的片段嗎?
嗨@Smittey你說InvalidateOptionMenu()將創建ActioBar標籤。我只是很想知道執行的代碼片段,以確保它確實發生,並且我可以避免這種情況發生。因爲由於這個調用,與標籤關聯的碎片在S3上被破壞。 –
更新:我已經確定碎片消失的原因是從非UI線程調用invalidate選項菜單 –