EventBas简单的黏性事件传值的简单实现
来源:互联网 发布:淘宝自出版平台 编辑:程序博客网 时间:2024/06/11 16:08
首页第一步 我们要定一个类 ,定义属性 把对应的字段 定义 get set 引入
在自己的需求的界面 拿到对应的id 参数 ,比如一个Bnaner的轮廓图里面的Id
banner.setOnBannerListener(new OnBannerListener() { @Override public void OnBannerClick(int position) { for (int i = 0; i <list.size(); i++) { for (int j=0;j<list.get(i).getChildList().size();j++){ String dataId = list.get(i).getChildList().get(j).getDataId(); strings.add(dataId); } } //黏性事件把Id 传过去 EventBus.getDefault().postSticky(new Bas(strings.get(position)+"")); Intent intent = new Intent(getActivity(),Main2Activity.class); startActivity(intent); } });
重点 的一句话 根据自己的需求 传参数
//黏性事件把Id 传过去 EventBus.getDefault().postSticky(new Bas(strings.get(position)+""));
第二步 就是在接收的那边要做的事情
public class Main2Activity extends AppCompatActivity implements IView2 { private JCVideoPlayerStandard jcVideoPlayerStandard; /* String s1="http://2449.vod.myqcloud.com/2449_22ca37a6ea9011e5acaaf51d105342e3.f20.mp4"; String s2="http://player.youku.com/player.php/sid/XMjUyODI2NDc2MA==/v.swf";//不支持swf格式的视频播放*/ private String id; UserPresenter2 userpresenter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); getSupportActionBar().setTitle("jiecaovideoplayer的使用"); jcVideoPlayerStandard= (JCVideoPlayerStandard) findViewById(R.id.jiecao_Player); //注册事件 if (!EventBus.getDefault().isRegistered(Main2Activity.this)){ EventBus.getDefault().register(this); } userpresenter = new UserPresenter2(this); userpresenter.getUsers(id); } //接收消息 添加注解 如果是黏性事件 将stick设置为true @Subscribe(threadMode = ThreadMode.MAIN, sticky = true) public void receiveMessage(Bas ge) { id= ge.getId(); } @Override protected void onDestroy() { //移除所有黏性事件 EventBus.getDefault().removeAllStickyEvents(); //销毁EventBus EventBus.getDefault().unregister(this); super.onDestroy(); } @Override public void getNews(Home2.RetBean hdurl) { //Toast.makeText(this, "进来了", Toast.LENGTH_SHORT).show(); //Log.d("mylog", "getNews: "+hdurl.getHDURL() ); jcVideoPlayerStandard.setUp(hdurl.getSDURL(),jcVideoPlayerStandard.SCREEN_LAYOUT_NORMAL,"视频标题"); }如果看不懂就下面的代码
//注册事件 if (!EventBus.getDefault().isRegistered(Main2Activity.this)){ EventBus.getDefault().register(this); }
//接收消息 添加注解 如果是黏性事件 将stick设置为true @Subscribe(threadMode = ThreadMode.MAIN, sticky = true) public void receiveMessage(Bas ge) { id= ge.getId(); } @Override protected void onDestroy() { //移除所有黏性事件 EventBus.getDefault().removeAllStickyEvents(); //销毁EventBus EventBus.getDefault().unregister(this); super.onDestroy(); }
阅读全文
0 0
- EventBas简单的黏性事件传值的简单实现
- EventBus黏性事件(简单的登录传值)
- 双击事件的简单实现
- iPhone上页面触屏事件的简单实现
- 简单的事件通知机制实现
- 用guava实现简单的事件驱动
- 实现简单的按钮事件监听
- EventBus的StickyEvents黏性事件详解及使用说明
- 黏性控件的使用
- 50、JavaScript里面,自定义事件的简单实现(事件队列的简单实现)
- 事件的简单解释:
- 简单的事件
- 简单的委托+事件
- 简单的事件机制
- 简单的事件
- 简单的laravel事件
- 简单的鼠标事件
- 简单的表单事件
- C# 异步委托使用
- 打包发布关于设置自动旋转屏幕默认旋转方向
- 2017大盘点:手机篇
- centos7安装oracle12c 一
- 听见丨谷歌AI自造“子AI” 性能略超过人类所造 高通发布年度旗舰芯片骁龙845
- EventBas简单的黏性事件传值的简单实现
- 安装maven 之后配置环境变量后 ,在命令行 中输入 mvn 遇到的C:\Users\Administrator>mvn The JAVA_HOME environment variabl.的错误
- 2144 数据结构实验之图论九:最小生成树
- Less函数说明
- [Err] 1054
- 2.JavaScript的一些基本语法
- Android Kotlin入门(RecyclerView的使用)
- 只有浏览器显示找不到服务器dns
- C++11 新特性总结