ActivityGroup中LocalActivityManage以及内部跳转问题

contain是一个容器,我自己用过很多,比如LinearLayout,ViewAnimator等等,后者支持动画,不过其实这样的布局,上面的内容有点动画,看起来会有点怪。

ActivityGroup里面有个非常重要的成员,它是负责subActivity管理的——LocalActivityManager,可以通过getLocalActivityManager()来获的。

来看一下这个成员有什么作用,当然从老农的博客里面可以去寻找这个类的中文API啦~

public Activity getCurrentActivity()

返回当前的activity,也就是状态是running的subActivity,也就是getAcitivity(getCurrentId())的实现

public String getCurrentId()

见上条

public void removeAllActivities()

销毁所有的subActivity

public Activity getActivity(String id)

通过acitivityId找到这个group对应的Activity对象。

public Window destroyActivity(String id, boolean finish)

这个是负责结束某一个subActivity的,在每次我们开启一个新的activity的时候,往往给他一个activityId,然后我们就可以通过这个id去销毁他。

public Window startActivity(String id, Intent intent)

在当前的group里面运行一个新的subActivity,必须传入一个id去映射之,做为索引。这边的Intent和Activity里的Intent一样,我们也可以通过这个来传递参数。

这边有一个需要注意的就是subActivity的启动方式方面的问题:

SingleTop和平时不同,举个例子:a启动b,b启动a,这时候在acitivity的栈里面有个就有了两个a,而在acitivityGroup管理下的SingleTop启动,则是a->b,再b->a,则不会有两个a,则是跳入a的时候call他的newIntent


参考:http://www.haogongju.net/art/133192

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值