Code Bye

求帮助 activity里含有另一个activity控件,怎么样操作获得

           如下,原因是功能需要本人要在main_activity中往handler发消息,但本人的 main_activity 消息里含有Activity1, Activity2,Activity3, Activity4里面的checkbox控件,此时会报错,本人想实现以下功能怎么修改?本人小白,刚入门没多久,跪求好心高手帮忙!

Message msg = new Message();
msg.what = UPDATE4;
if (cbFlag == 1)
msg.obj = Activity1.cbAllLysis;//此为Activity1中的checkbox
if (cbFlag == 2)
msg.obj = Activity2.cbAllWashA;//此为Activity2中的checkbox
if (cbFlag == 3)
msg.obj = Activity3.cbAllWashB;//此为Activity3中的checkbox
if (cbFlag == 4)
msg.obj = Activity4.cbAllElution;//此为Activity4中的checkbox
handler.sendMessage(msg);

解决方案

10

本人从来没有听说一个activity里包含另一个activity,也从来没听过android消息机制是传递整个控件的。题主的这个设计真是奇葩,建议先补补android基础,看看四大组件,以及组件之间的通信,再来着手些代码。

20

其实 最简单的 办法 就是
创建 一个  类  里面 存对象,,  然后 全局 都可以访问
例如
class  Memory{
public static  View  a;
}
Memory.a = ;
在另一个 就可以访问了
但是 这里需要你本人 手动 去释放 这个 控件  不然 就造成内存泄漏啦, 不过一般 情况下 是不会这样去使用的.
还有种,就想你上面 一样 使用 handler 抛出 一个 信息 然后 在 回调 中 进行处理 ,不过这种 就比较麻烦了.
还有很多 其他办法 的 就不多说了

10

引用:

本人从来没有听说一个activity里包含另一个activity,也从来没听过android消息机制是传递整个控件的。题主的这个设计真是奇葩,建议先补补android基础,看看四大组件,以及组件之间的通信,再来着手些代码。

+1
lz你假如是想实现activity之间的通讯,可以考虑用广播


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明求帮助 activity里含有另一个activity控件,怎么样操作获得