1

我有一個需要GCM和Tabhost的項目,但是在同一個MainActivity類中聲明它們會導致應用程序崩潰,並且因爲我的應用程序需要與Gingerbread向後兼容,所以我無法使用片段。有誰知道解決方法?Android:GCM和Tabhost可以共存嗎?

編輯: 好吧,我發現在預蜂窩版本實施碎片選項卡這個不錯的教程,但我仍然遇到同樣的問題。 http://thepseudocoder.wordpress.com/2011/10/04/android-tabs-the-fragment-way/

如何以不干擾製表符的方式實現GCM?反之亦然?我錯過了什麼?

+0

您可以在Gingerbread上使用碎片 - 它們是支持庫的一部分:http://developer.android.com/tools/extras/support-library.html – ianhanniballake

+0

這是一個很棒的提示!我是Android新手,並且從未想到這一點。謝謝! –

回答

0

GCM和TabHost似乎很好地發揮。問題的根源竟然不是,而是一個選項菜單。如果有人正在建立使用谷歌檢查這個討厭的代碼你撕你的頭髮從之前提供的DemoActivity圖書館GCM:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch(item.getItemId()) { 
     case R.id.options_register: 
      GCMRegistrar.register(this, SENDER_ID); 
      return true; 
     case R.id.options_unregister: 
      GCMRegistrar.unregister(this); 
      return true; 
     case R.id.options_clear: 
      mDisplay.setText(null); 
      return true; 
     case R.id.options_exit: 
      finish(); 
      return true; 
     default: 
      return super.onOptionsItemSelected(item); 
    } 
}  

我不夠聰明弄清楚爲什麼這是有問題的,但它不喜歡用Fragments創建的TabHost或Tabs(我都嘗試過)。

相關問題