在android的开发中,不同的activity,activity与fragment,以及fragment 与fragment之间这些不同的界面之间可能会涉及到一些相互修改对方的UI 的情况,这个时候就需要它们之间的相互通信。
activity之间:
1.跳转activity时候通过Intent添加参数跳转。这种方式只能够在跳转之后对跳转的activity的一些参数进行设置。
2.activity之间使用广播通信。
这个方法虽然我不知道可不可靠,但是我发现这个是一种非常有效的方法,特别是如果我想不跳转activity但是同时也更改另一个activity的一些参数的时候。
具体的做法是:
在一个activity中创建一个广播接受类,继承broadCastReciever,进行广播消息的处理,然后注册;在另一个界面需要根该参数的时候只需发送广播消息就可。
3.Handler消息处理
这种的通信是在我学习的时候想在fragment中更新它依附的activity的一些参数,在activity中定义自己的Handler类,重写handleMessage()方法,创建fragment的时候把activity的handler一并传入;Handler很多时候用来异步处理消息,我在写一个蓝牙类的时候把数据传送到mainActivity中进的Handler中进行处理,后来我发现也可以用这种方式进行通信,更新activity的UI。
这是我刚刚学习android开发的一些想法,想把它们记下来,如果能给看这篇文章的你带来一些启发,不胜荣幸。