Android 4.0 / ICS - 操作栏上的应用程序图标无法点击

时间:2012-01-29 03:08:01

标签: java android android-actionbar android-4.0-ice-cream-sandwich xoom

出于某种原因,在使用Ice Cream Sandwich在我的摩托罗拉Xoom上进行测试时,即使我已经实现了事件处理程序,操作栏中的应用程序图标也无法点击。这仅在将targetSdkVersion更改为15后才会发生。如果它是13,它仍然是可点击的,即使在ICS上也是如此。为什么会发生这种情况,如何让它像按钮一样点击?我搜索了文档但找不到任何内容。

谢谢。

更新:这是我的代码:

的AndroidManifest.xml:

...
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" />
<application android:icon="@drawable/icon" android:label="@string/app_name"
    android:theme="@style/android:Theme.Holo.Light">
...

BaseActivity.java(我的活动都继承自这个类:

...
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            // app icon in action bar clicked; go home
            Intent intent = new Intent(this, MainActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(intent);
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}
...

2 个答案:

答案 0 :(得分:25)

我在http://developer.android.com/guide/topics/ui/actionbar.html的文档中找到了它:

  

注意:如果您使用该图标导航到主页活动,请注意从Android 4.0(API级别14)开始,您必须通过调用setHomeButtonEnabled(true)将该图标显式启用为操作项(在之前的版本中)版本,图标默认启用为操作项。)

答案 1 :(得分:0)

您要使用以下代码:

ActionBar actionBar = getSupportActionBar();
actionBar.setHomeButtonEnabled(true);