2012-12-04 181 views
5

我有一個ActionBar兼容性的Android API級別15的問題。向上按鈕不適用於此API級別ActionBar兼容性問題與API 15

我使用了android-sdk文件夾中提供的名爲「actionbarcompat」的示例項目,因此我導入了所有類,並且我使用ActionBarActivity擴展了所有活動。我還加這段代碼在清單我的所有活動:

<activity 
    android:name="fr.appsolute.rescue.MyActivity" 
    android:label="@string/title_activity_info" 
    android:parentActivityName=".MainActivity" 
    android:screenOrientation="portrait" > 
    <meta-data 
     android:name="android.support.PARENT_ACTIVITY" 
     android:value=".MainActivity" /> 
</activity> 

,並在我的ActionBarActivity:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // TODO Auto-generated method stub 
    switch(item.getItemId()){ 
    case android.R.id.home: 
     NavUtils.navigateUpFromSameTask(this); 
     return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 

這允許用戶觸摸了按鈕(應用程序圖標)返回到MainActivity

此代碼適用於Android 2.3.3和4.2,但不適用於4.0.1,我不明白爲什麼。當用戶觸摸向上按鈕時,沒有任何反應。

感謝您的幫助。

PS:我不能使用外部庫,我必須使用本地代碼

+1

該示例已被棄用。使用ActionbarSherlock。 – rciovati

+0

謝謝@rciovati,ActionbarSherlock工作得很好 –

回答

0

使用ActionBarSherlock解決它

0

不知道爲什麼它不工作。我同意奇怪的是它只在API 15上失敗。

可以調用NavUtils.navigateUpFromSameTask(this)的另一種方法是調用finish()。這會關閉您當前的活動並轉到堆棧中的上一個活動。它可能會給你相同的期望結果。