ActionBarSherlock actionLayout不触发click事件

时间:2013-05-20 11:40:53

标签: android android-actionbar actionbarsherlock

我尝试将事件侦听器附加到操作栏中的自定义按钮,但是click事件不会触发任何操作。有人可以帮我调试。

R.menu.address_menu

<item
    android:id="@+id/address_menu_add"
    android:showAsAction="always"
    android:title="@string/add"
    android:actionLayout="@layout/add"/>
<item
    android:id="@+id/address_menu_setting"
    android:showAsAction="collapseActionView"
    android:title="@string/settings"/>
<item
    android:id="@+id/address_menu_help"
    android:showAsAction="collapseActionView"
    android:title="@string/help"/>
<item
    android:id="@+id/address_menu_privacy"
    android:showAsAction="collapseActionView"
    android:title="@string/privacy_policy"/>

按钮的动作视图

<Button
    android:id="@+id/add_new_item"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/btn_basket_full"
    android:layout_gravity="center|center_vertical"
    android:gravity="center|center_vertical"
    android:text="Add"
    android:textColor="#580606"
    android:textAppearance="?android:attr/textAppearanceMedium" />

事件监听器已添加

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getSupportMenuInflater();
    inflater.inflate(R.menu.address_menu, menu);

    MenuItem item = menu.findItem(R.id.address_menu_add);
    item.getActionView().setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            addReview();
        }
    });
    return true;
}

0 个答案:

没有答案