2011-11-06 33 views

回答

22

您是否從應用程序圖標看到任何觸摸反饋? (當它按下時它會發光嗎?)

由於許多活動不使用操作欄主頁按鈕,因此在針對運行在Android 4.0上的API 14+的應用中,默認情況下會禁用它。 (這是爲了讓用戶不會嘗試按下它,看到它發光,並想知道爲什麼沒有發生。)想要使用它的應用程序應該叫ActionBar#setHomeButtonEnabled(true)

我們應該修改ActionBarCompat樣本以更清晰地表達這一點。一個簡單的辦法讓你和運行將修改ActionBarHelperICS.java並添加以下內容:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    mActivity.getActionBar().setHomeButtonEnabled(true); 
} 

在應用程序中,你要在開啓和關閉你想作進一步的修改把這個更多的控制。

+0

非常感謝,這是對的。 – Mikey

+1

只需注意,這[在文檔中提到](http://developer.android.com/guide/topics/ui/actionbar.html#Home),它很容易錯過,因爲它是一個「註釋」。 – srunni

+0

它不適合我。添加這段代碼,我在Eclipse中遇到了錯誤。在這條線的多個標誌 \t - 呼叫需要API等級14(當前分鐘被4): \t android.app.ActionBar#setHomeButtonEnabled加入剿新的API – tobias

3

我也有這個問題。這段代碼對我有用:

public void onCreate(Bundle savedInstanceState) { 
    ... 
    if (android.os.Build.VERSION.SDK_INT >= 11) { 
     //noinspection ConstantConditions 
     getActionBar().setHomeButtonEnabled(true); 
    } else { 
     getSupportActionBar().setHomeButtonEnabled(true); 
    } 
} 

一些額外信息:minSdkVersion="7" targetSdkVersion="18"。這是我項目的LAUNCHER活動,所以它沒有父項活動。在其他活動中使用setDisplayHomeAsUpEnabled(true)工作得很好。

+0

這應該被接受答案 - 這是唯一幫助我的東西 – AndrewS

相關問題