ActionBarCompat - App icon action (click) not working on 4.0 devices

不羁岁月 提交于 2020-01-02 01:53:07

问题


I have this problem with the Android ActionBarCompat project: On emulators with Android 4.0 the click on the app icon doesn't cause any onOptionsItemSelected event, whereas it works on all other OS versions.

Any input is greatly appreciated!


回答1:


Are you seeing any touch feedback from the app icon? (Does it glow when you press it?)

Since many activities do not use the action bar home button, in apps that target API 14+ running on Android 4.0 it is disabled by default. (This is so that users don't try pressing it, see it glow, and wonder why nothing happened.) Apps that want to use this should call ActionBar#setHomeButtonEnabled(true).

We should probably revise the ActionBarCompat sample to surface this more clearly. One simple way to get you up and running would be to modify ActionBarHelperICS.java and add the following:

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

In an app where you want more control over turning this on and off you would want to make further changes.




回答2:


I had this problem as well. This code did the trick for me:

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

Some extra info: minSdkVersion="7" targetSdkVersion="18". This is the LAUNCHER activity of my project, so it has no parent activity. Using setDisplayHomeAsUpEnabled(true) in other activities worked just fine.



来源:https://stackoverflow.com/questions/8028197/actionbarcompat-app-icon-action-click-not-working-on-4-0-devices

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!