2016-03-03 73 views
0

我想实现的聊天消息(例如WhatsApp)Android的ListView和儿童选择

我需要实现在任何项目上,使得

我)长按列表视图中选择机构的列​​表视图应该启动列表视图动作模式(应该显示1项选择,5项选择等...)

ii)如果列表视图上的操作模式打开,后续点击子视图应该放弃列表应该选择项目...(点击图片不能打开或下载图片)

三)如果不是在行动模式,点击附件应打开附件(如果没有选择项目,点击该附件应打开或下载附件。)

请帮助...

+0

我想点击列表视图项图像视图。如果动作模式是在图像视图不应该处理点击和列表视图应该处理它..... – Jithin

回答

0

您可以创建一个ClickInterceptor类可以同时处理视图和列表项点击收听

public class ClickInterceptor implements 
     View.OnClickListener, 
     ListView.OnItemClickListener, 
     ListView.OnItemLongClickListener 

导致实现所有你需要不同的点击方法。

这样,视图和你的listview clicklistener/itemclicklistener就可以接受这个类的对象。

现在在ClickInterceptor类中,您可以编写能够跟踪并根据ActionMode状态决定要发生什么的代码。

0

public class ChatAttachment extends LinearLayout private Context mContext; public ChatAttachment(Context context,AttributeSet attrs)super(context,attrs); mContext = context; init(); }

public ChatAttachment(Context context, AttributeSet attrs, int defStyleAttr) { 
    super(context, attrs, defStyleAttr); 
    mContext = context; 
    init(); 
} 

private void init(){ 

} 

@Override 
public boolean onInterceptTouchEvent(MotionEvent ev){ 

    if(ChatListAdapter.mActionModeEnabled){ 
     return true; 
    } 

    return false; 
} 

}