关闭

expandable长点击的实现

标签: expandablecontextmenu
536人阅读 评论(0) 收藏 举报
分类:
在使用ExpandableListView的时候,很多时候需要用到长点击事件。虽然ExpandableListView有个事件OnChildClickListener,但是没有对应的OnChildLongClickListener。这个时候我们可以自己写一个用同种效果的事件来代替OnChildLongClickListener()。
前提条件:在我们的Activity中已经有一个ExpandableListView对象,
private ExpandableListView expandableListView;
第一步:注册,给这个ExpandableListView对象注册一个Menu事件,
registerForContextMenu(expandableListView);
第二步:重写方法,重写onCreateContextMenu方法,
@Override
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenuInfo menuInfo)
    {
        super.onCreateContextMenu(menu, v, menuInfo);
        ExpandableListView.ExpandableListContextMenuInfo info =           (ExpandableListView.ExpandableListContextMenuInfo) menuInfo;
        int type = ExpandableListView
                .getPackedPositionType(info.packedPosition);
        int group = ExpandableListView
                .getPackedPositionGroup(info.packedPosition);
        int child = ExpandableListView
                .getPackedPositionChild(info.packedPosition);
        if (type == 1)
        {
               Log.i(TAG,“长点击事件------在这里写任何长点击之后的处理代码”);
                }

       }
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:114340次
    • 积分:1735
    • 等级:
    • 排名:千里之外
    • 原创:55篇
    • 转载:40篇
    • 译文:3篇
    • 评论:12条
    最新评论