2 u013227495 u013227495 于 2016.04.05 16:39 提问

【Android】请问当前Activity如何控制其他Activity内控件的操作?

需要做一个定时隐藏其他Activity按钮的功能,我的实现方法是在第一个Activity发送广播,在第二个Activity接收,然后做按钮隐藏处理。
问题是只能在第二个Activity等待时间结束,按钮才会隐藏,在其他Activity等待或者退出重新进入第二个Activity,按钮都不会再消失,请问该如何解决?

4个回答

bingaicao1
bingaicao1   2016.04.05 17:52
已采纳

在Application里面定义全局静态变量,或者在类似helper辅助类里面定义,当你的Activity显示的时候,读取变量,来控制按钮的隐藏。如果直接将Activity引用放入静态变量里面,容易导致内存溢出。

zrf1335348191
zrf1335348191   2016.04.05 17:17

分析一下你的问题
首先activityA发送广播隐藏activityB中的view,这是可以做到的,但是当你重新为activity布局即每次重新创建activityB时都会将view恢复到最初的状态
不如弄个全局的变量作为标志位,在想要隐藏view时就置标志位,然后在activityB创建时通过判断标志位来实现对view的隐藏或显示

u013227495
u013227495 感谢帮助,我用静态变量的方法解决了
一年多之前 回复
sl_18500
sl_18500   2016.04.05 17:42

用sharepreference存储下这个状态,每次创建的时候判断下就可以了

u013227495
u013227495 感谢帮助,之前也考虑过用SharedPreference。可能是写法错了,没达到效果
一年多之前 回复
bruse_android
bruse_android   2016.04.06 00:18

为什么不采用EventBus回调呢

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!