OnMenuItemSelected isn't called when layout is set for menu item

you should use below snippet ( Just for reference )

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.main_menu, menu);
        final Menu m = menu;
        final MenuItem item = menu.findItem(R.id.ActionConnection);
        item.getActionView().setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {   
                sync();
            }
        });
        return true;
    }

In addition to the answer provided by Vipul Shah.

Make sure you disable the clickable option of all items in your action layout:

android:clickable="false"

Otherwise, it may steal the click so that you still cant receive onClick call back.