问题描述
- 求教android中如何控制一个activity在内存中的实例个数
- 项目中有个需求,一个activity中有个按钮可以打开自己的另一个实例,那么这样就会出现不停的点,不停的创建这个activity实例的情况出现,有没有方法可以控制这个activity实例的个数啊,比如只保留最近打开的三个这个activity实例,有没有方法可以实现的啊,求教大神们
解决方案
解决方案二:
机器人的回答没有用啊,需要是保存3个实例,不是一个啊
解决方案三:
把这个activity的lunchmode设置为singletop,或者singletask
解决方案四:
如果你非得控制数量,那就用一个Map,记录每个Activity的数量,每次oncreate时,push进去
解决方案五:
监听点击次数,当超过一定数量就不要响应事件。或者用LinkedList这个集合,先进先出原则
解决方案六:
额,搞定了,直接在application中增加了个ArrayList,保存打开的activity实例,每次创建将activity实例保存到list中,保存前判断是否超过规定数额,超过的直接调用list中第一个的finish方法
解决方案七:
finish方法中在将本实例从list中移除,防止泄漏
解决方案八:
非要限制个数的话就用一个list把Activity装进去。每次要添加之前都去遍历一下这个list,把其中的实例取出来,拿到类名,如果和当前类名一样且超过3个,就不添加
时间: 2024-11-02 07:50:41