使用ActivityGroup时,如何保存Activity状态、如何使用子Activity的Menu?

1. 使用ActivityGroup时,如何保存Activity状态?

其实很简单, 只要像下面这样来加载Activity即可。   

view plainprint?
getLocalActivityManager().startActivity("XXX", new Intent(this, XXX.class)).getDecorView() 

那么又如何让ActivityGroup不保存子Activity的状态呢? 即切换时,直接销毁。

其实只要加一个Flag: Intent.FLAG_ACTIVITY_CLEAR_TOP
,如下:

view plainprint?
getLocalActivityManager().startActivity("YYY", new Intent(this, YYY.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView() 


2 使用ActivityGroup时,如何使用子Activity的Menu?

  其实也很简单,只要在继承ActivityGroup的类中

view plainprint?
@Override 
        public boolean onKeyUp(int keyCode, KeyEvent event) { 
               if(keyCode==KeyEvent.KEYCODE_MENU) { 
                     
                    this.getLocalActivityManager().getCurrentActivity().openOptionsMenu(); 
 
                } 
return super.onKeyDown(keyCode, event); 


onkeyDown  或者 onkeyUp都可以!

posted @ 2011-11-24 15:10  Glan  阅读(108)  评论(0)    收藏  举报