一:EventBus使用:
首先:
1.创建一个 EventMessage 用来发送eventbus消息和接收的对象
public class EventMessage {
}
2. 在你要点击的方法里写入
EventBus.getDefault().postSticky(new EventMessage());
3.在activiry 也是Fragment 接收
//EventBus发送过来的标识
@Subscribe(threadMode = ThreadMode.MAIN)
public void controlViewIsVisiable(EventMessage eventMessage) {
Log.i("zll==", "controlViewIsVisiable: 接收到了 "+eventMessage.toString());
//接口adapter控件
//我这个拿到做的显示隐藏状态
Holder needGoneHolder = videoJZAdapter.getNeedGoneHolder();
Log.i("zll==", "controlViewIsVisiable: 接收到了 "+needGoneHolder);
if (needGoneHolder.gongn.getVisibility() == View.VISIBLE && needGoneHolder.gwc_c.getVisibility() == View.VISIBLE && needGoneHolder.rl_xiang.getVisibility() == View.VISIBLE) {
needGoneHolder.gongn.setVisibility(View.GONE);
needGoneHolder.gwc_c.setVisibility(View.GONE);
needGoneHolder.rl_xiang.setVisibility(View.GONE);
} else if (needGoneHolder.gongn.getVisibility() == View.GONE && needGoneHolder.gwc_c.getVisibility() == View.GONE && needGoneHolder.rl_xiang.getVisibility() == View.GONE) {
needGoneHolder.gongn.setVisibility(View.VISIBLE);
needGoneHolder.gwc_c.setVisibility(View.VISIBLE);
needGoneHolder.rl_xiang.setVisibility(View.VISIBLE);
}
}
4.在adapte里边写入你的view 所有的 也就是你的控件
public Holder getNeedGoneHolder() {
//你拿到这个不也一样能拿到那个 全部的 拿到只在在步骤3中获取出来
return this.voholder;
}
二: 使用接口回调(推荐使用)
1:单独写个接口 OnDoubleClickListener
public interface OnDoubleClickListener {
void onDoubleClick(View v);
}
2.在用的地方获取使用
private OnDoubleClickListener doubleClickListener;
public void setOnDoubleClickListener(OnDoubleClickListener mOnDoubleClickListener) {
doubleClickListener = mOnDoubleClickListener;
}
doubleClickListener.onDoubleClick(null);
3.在使用的地方adapter中
voholder.playerview//这个是我自定义控件那个类 也就是我上边写接口的那个类
voholder.playerview.setOnDoubleClickListener(new OnDoubleClickListener() {
@Override
public void onDoubleClick(View v) {
Log.i("zll", "双击执行了=========" + position);//
voholder.fenxiang.setText("双击 双击");
if (voholder.gongn.getVisibility() == View.VISIBLE &&
voholder.gwc_c.getVisibility() == View.VISIBLE && voholder.rl_xiang.getVisibility() == View.VISIBLE) {
voholder.gongn.setVisibility(View.GONE);
voholder.gwc_c.setVisibility(View.GONE);
voholder.rl_xiang.setVisibility(View.GONE);
} else if (voholder.gongn.getVisibility() == View.GONE && voholder.gwc_c.getVisibility() == View.GONE && voholder.rl_xiang.getVisibility() == View.GONE) {
voholder.gongn.setVisibility(View.VISIBLE);
voholder.gwc_c.setVisibility(View.VISIBLE);
voholder.rl_xiang.setVisibility(View.VISIBLE);
}
}
});
ok结束。。。。。。