使用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都可以!

你可能感兴趣的:(menu)