码迷,mamicode.com
首页 > 其他好文 > 详细

ActionMode 的使用(参考)

时间:2014-11-25 18:57:33      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:android   private   public   method   return   

    ActionMode是Android 3.0以后出现的Android 3.0以前,我们处理列表的长按事件经常使用Context Menu,Android3.0以后,我们有了新的选择:ActionMode。下图左边效果为Context Menu右边效果为ActionMode。

bubuko.com,布布扣


 1、实现ActionMode.Callback接口,并处理ActionMode的生命周期,ActionMode的生命周期如下图:

bubuko.com,布布扣

private ActionMode.Callback mCallback = new ActionMode.Callback() {


@Override

public boolean onPrepareActionMode(ActionMode mode, Menu menu) {

return false;

}


@Override

public void onDestroyActionMode(ActionMode mode) {

// TODO Auto-generated method stub

}


@Override

public boolean onCreateActionMode(ActionMode mode, Menu menu) {

MenuInflater inflater = mode.getMenuInflater();

inflater.inflate(R.menu.actionmode, menu);

return true;

}


@Override

public boolean onActionItemClicked(ActionMode mode, MenuItem item) {

boolean ret = false;

if (item.getItemId() == R.id.actionmode_cancel) {

mode.finish();

ret = true;

}

return ret;

}

};

2.当你点击触发时,应调用startActionMode()方法:

someView.setOnLongClickListener(new View.OnLongClickListener() {

    // Called when the user long-clicks on someView

    public boolean onLongClick(View view) {

        if (mActionMode != null) {

            return false;

        }

  

        mActionMode = getActivity().startActionMode(mActionModeCallback);

        view.setSelected(true);

        return true;

    }

});

简单完成后效果图大概这样,bubuko.com,布布扣



但有的公司需求不满足于左上角的勾勾  ,  可自行删除这个勾勾,具体方法如下:

<style name="AppTheme" parent="android:Theme.Holo">
 <item name="android:actionModeCloseButtonStyle">@style/NoCloseButton</item>
</style>

<style name="NoCloseButton" parent="@android:style/Widget.ActionButton.CloseMode">
 <item name="android:visibility">gone</item>
</style>


ActionMode 的使用(参考)

标签:android   private   public   method   return   

原文地址:http://9638309.blog.51cto.com/9628309/1582371

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!