获取到adapter的控件 做判断

一: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结束。。。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值